1. 程式人生 > 其它 >前端面試題(3)—— iframe相關知識

前端面試題(3)—— iframe相關知識

iframe元素會建立包含另外一個文件的內聯框架(即行內框架),即會在網頁中顯示網頁。


  • 新增 iframe 的語法:
    <iframe src="URL"></iframe>
    URL指向隔離頁面的位置。

  • Iframe設定高度和寬度:
    height和width屬性用於規定iframe的高度和寬度。屬性值的預設單位是畫素,但也可以用百分比來設定(比如 "80%")。
    例如:<iframe src="URl" width="200" height="200"></iframe>

  • Iframe刪除邊框
    frameborder屬性規定是否顯示iframe周圍的邊框,設定屬性值為 "0" 就可以移除邊框。
    例如:<iframe src=URL frameborder="0"></iframe>

  • 使用iframe作為連結的目標
    iframe可用作連結的目標(target),連結的target屬性必須引用iframe的name屬性。
    例如:<iframe src=URL name="aa"></iframe>
    <p><a href="" target="aa">AAA</a></p>

  • iframe優點:
    1.iframe能夠把嵌入的網頁原樣展現出來;
    2.模組分離,便於更改,如果有多個網頁引用iframe,只需要修改iframe的內容,就可以實現呼叫的每一個頁面內容的更改,方便快捷;
    3.網頁如果為了統一風格,頭部和版本都是一樣的,就可以寫成一個頁面,用iframe來巢狀,增加程式碼的可重用;
    4.如果遇到載入緩慢的第三方內容如圖示和廣告,這些問題可以由iframe來解決;
    5.過載頁面時不需要過載整個頁面,只需要過載頁面中的一個框架頁;
    6.方便製作導航欄。

  • iframe缺點:
    1.iframe會阻塞主頁面的Onload事件(在頁面完全載入後執行,包括圖片css等用法:window.onload = function(){xxx});
    2.iframe和主頁面共享連結池,而瀏覽器對相同城的連結有限制,所以會影響頁面的並行載入;
    3.程式碼複雜,搜尋引擎無法理解,不利於SEO;
    4.iframe框架頁面會增加伺服器的http請求,對於大型網站不可取;
    5.很多的移動裝置無法完全顯示框架,裝置相容性差。

解決辦法:用js動態給iframe新增src屬性。