1. 程式人生 > >使用iframe呼叫指定網頁的特定位置 (顯示目標網頁某區域的我想要的內容)

使用iframe呼叫指定網頁的特定位置 (顯示目標網頁某區域的我想要的內容)

有些時候我們並不需要顯示iframe標籤屬性src指定的目標網頁的所有內容,往往只需要顯示某一特定區域。現有兩種實現方法提供,但嚴禁使用此方法用於欺騙、隱瞞目的。

      這裡用到了Iframe的一些屬性,稍微介紹下:
       1. marginheight 屬性規定框架內容與框架的上方和下方之間的高度,以畫素計。
       2. maiginweidth 屬性規定框架內容與框架的左側和右側之間的高度,以畫素計。
       3. vspace y方向顯示的區域,負值為從目標網頁最上面開始擷取的部分,正值為y值+從上部開始內容區域
       4. hsapce x方向顯示的區域,負值為從目標網頁左側開始截圖的部分,正值為x值+從左側開始內如區域
       5. src 目標網頁的地址,可以為html,asp,文字等內如
       6. frameborder 框架邊框,0為無邊框(畫中畫效果)
       7. scrolling 是否顯示滾動,yes顯示
       8. align:指定浮動視窗內的頁面相對於浮動視窗的位置,它的值有left、right、top、middle、bottom
       9. marginwidth、marginheight 目標網頁被框架覆蓋的深度

 方法一,以百度主頁http://www.baidu.com為例,去掉百度的Logo部分,程式碼與效果如下:

< html>
< head>
    <title>Iframe標籤顯示目標網頁的指定區域,方法1</title>
< /head>
< body>
< div align="center">
< iframe width="800" height="600" src="http://www.baidu.com" scrolling="no" hspace="-100" vspace="-150"></iframe> 
< /div></body>
< /html>

 方法二,使用DIV控制,這也是使用iframe框架的好處,因為它不像frame,它可以顯示的網頁的任意區域程式碼如下:
< html>
< head>
    <title>Iframe標籤顯示目標網頁的指定區域,方法1</title>
< /head>
< body>
< div align="center" style="margin:0 auto;">

    <div style="width:800px;height:600px;overflow:hidden;border:0px"> 
         <div style="width:500px;height:800px;margin:-153px 0px 0px -10px;">
              <iFrame src="http://www.baidu.com" width="800" height="600" scrolling="no">
             </iFrame>
         </div> 
     </div> 
< /div> 
< /body>

</html>

方法三、

目前尚未找到按座標來控制的辦法,只有採用按頂、左、右邊跑的方法來控制,因此要製作一個檔案來完全呼叫目標網頁內容,然後再在需要呼叫指定內容的地方使用iframe程式碼呼叫。
    首先建立一個完全呼叫目標網頁的檔案,命名為files.html,程式碼如下:

<html>
< head>
< meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>
 <title>AUDCNY</title>
< /head>
< body> <iframe src=”目標網址” width=”980″ height=”700″ frameborder=”0″ scrolling=”no” style=”position: absolute; top: -120px; left: -680px;”></iframe>
< /body>
< /html>
    這個頁面用iframe框架引用了目標頁面,並且用CSS定位設定了框架浮動位置(top: -120px; left: -680px)。當然也可以按右邊距控制,如right:680px,距離大小可以根據情況調整,直到調整到合適的位置。

    然後在需要呼叫目標內容的檔案中合適的位置放入以下程式碼:

<iframe src=”這裡填寫上面儲存的html文件的地址” width=”300″ height=”230″ frameborder=”0″ scrolling=”no”></iframe>
    高寬可以根據情況調整,為了使呼叫的內容正常、正確顯示的我們設定的位置,大家可以修改files.html裡的邊距控制量以達到最佳效果。

 遇到問題:JSP中iframe表中加上 vspace=-190 hspace=0 這兩個屬性報Undefined attribute name (vspace)錯誤.而且這兩個標籤也不管用

 
首先提供一個需要現在位置大小的一個div 然後 在這個div 中引入要載入的頁面並指定具體要檢視內容的位置,下面提供了一個示例便你參考,如不理解可以追問我。
<div class="groupnews_insideL" style="width:800px;margin-left:10px; overflow:hidden;position:relative;">
<iframe id="jin10" width="125%" height="5000" frameborder="0" style="position:relative; top:-175px; float:left; left:-193px;" scrolling="no" src="http://www.kuaixun360.com/data/2.html" name="jin10">
<!DOCTYPE html>
<html>
</iframe>
</div>