框架的優點
- 重載頁面時不需要重載整個頁面,只需要重載頁面中的一個框架頁(減少了數據的傳輸,增加了網頁下載速度)
- 方便制作導航欄
框架的缺點
- 會產生很多頁面,不容易管理
- 不容易打印
- 瀏覽器的后退按鈕無效
- 代碼復雜,無法被一些搜索引擎索引到
- 多數小型的移動設備(PDA 手機)無法完全顯示框架
- 多框架的頁面會增加服務器的http請求
- 由於上面諸多缺點,因此不符合標准網頁設計的理念,已經被標准網頁設計拋棄
提示: 目前框架的所有優點完全可以使用Ajax實現,因此已經沒有必要使用框架了。
iframe也稱作嵌入式框架,嵌入式框架和框架網頁類似,它可以把一個網頁的框架和內容嵌入在現有的網頁中。
首先它的標簽寫法是:
<frameset >
<frame src= "要連接的頁面"></frame>
</frameset>
row
iframe用於設置文本或圖形的浮動圖文框或容器。
frameborder設定圍繞圖文框的邊緣寬度
其中還有快讀高度的設計
scrolling=no 是否有滾動條(YES,NO,AUTO)
SRC 指定IFRAME調用的文件或圖片(HTML,HTM,GIF,JPEG,JPG,PNG,TXT,*.*)
Iframes 阻塞頁面加載
及時觸發 window 的 onload 事件是非常重要的。onload 事件觸發使瀏覽器的 “忙” 指示器停止,告訴用戶當前網頁已經加載完畢。當 onload 事件加載延遲后,它給用戶的感覺就是這個網頁非常慢。
window 的 onload 事件需要在所有 iframe 加載完畢后(包含里面的元素)才會觸發。在 Safari 和 Chrome 里,通過 JavaScript 動態設置 iframe 的 SRC 可以避免這種阻塞情況。
唯一的連接池
瀏覽器只能開少量的連接到web服務器。比較老的瀏覽器,包含 Internet Explorer 6 & 7 和 Firefox 2,只能對一個域名(hostname)同時打開兩個連接。這個數量的限制在新版本的瀏覽器中有所提高。Safari 3+ 和 Opera 9+ 可同時對一個域名打開 4 個連接,Chrome 1+, IE 8 以及 Firefox 3 可以同時打開 6 個。你可以通過這篇文章查看具體的數據表:Roundup on Parallel Connections.
有人可能希望 iframe 會有自己獨立的連接池,但不是這樣的。絕大部分瀏覽器,主頁面和其中的 iframe 是共享這些連接的。這意味着 iframe 在加載資源時可能用光了所有的可用連接,從而阻塞了主頁面資源的加載。如果 iframe 中的內容比主頁面的內容更重要,這當然是很好的。但通常情況下,iframe 里的內容是沒有主頁面的內容重要的。這時 iframe 中用光了可用的連接就是不值得的了。一種解決辦法是,在主頁面上重要的元素加載完畢后,再動態設置 iframe 的 SRC。
美國前 10 大網站都使用了 iframe。大部分情況下,他們用它來加載廣告。這是可以理解的,也是一種符合邏輯的解決方案,用一種簡單的辦法來加載廣告服務。但請記 住,iframe 會給你的頁面性能帶來沖擊。只要可能,不要使用 iframe。當確實需要時,謹慎的使用他們。