2011-02-25 85 views
0

我們知道母版頁是一個強大的功能,那麼爲什麼很多網站使用iframe開發?對於每一個請求,從服務器下載iframe,這反過來增加了服務器上的開銷,而如果我們使用母版頁,則只有ContantPlaceholder部分由服務器處理。爲什麼我們在使用iframe時要使用母版頁?

+1

順便說一句,根據您的實際問題,標題應該更像「我們爲什麼要使用iframe的時候,我們有母版頁?」 – StriplingWarrior 2011-02-25 03:50:01

回答

1

你是對的,iframes被放在服務器上的額外負載和母版頁更有效率。但有些情況下iframe是必要的。 iframes最大的用途之一是顯示託管在單獨域中的內容。例如,facebook應用通常顯示在iframes中,以便他們的內容可以託管在域中。

一些遺留應用程序廣泛使用框架作爲設計模型,幷包含JavaScript以允許框架進行通信。這通常被認爲是不好的設計,並且通常可以用更容易理解的方式替換爲母版頁。

+0

-1,主頁面會給服務器帶來額外的負載,並且iframe更加高效。 – 2013-07-10 12:08:19

+0

@Quandary iframe是全新的(額外)請求。每個新請求都必須經過整個頁面循環。主頁面只是頁面循環中的一個步驟。所以是的,一個主頁向服務器添加負載,但多個HTTP請求更糟糕。 – kelloti 2013-07-11 16:12:12

+0

但是這忽略了考慮你只有在頁面的第一次加載時纔有多個請求。隨後點擊的每個按鈕都只會請求iframe內容==>流量較少。 – 2013-11-27 08:25:48

2

簡而言之,一個主頁面可以做的遠不止一個IFrame .... IFrames可以充當內容持有者,但是他們不能提供一個模板來表示所有頁面的外觀。

母版頁提供此模板功能以及其他好東西。

編輯:

此外,IFrames更昂貴。這是一個討論這個話題的鏈接。

http://my.safaribooksonline.com/book/web-design-and-development/9780596803773/using-iframes-sparingly/summarizing_the_cost_of_iframes

+0

爲什麼不呢?他們可以通過JavaScript將.css和.js文件添加到子頁面。在這方面,與主頁面一樣高效。 – 2013-11-27 08:28:54

1

IFrame及代表他們的頁面是彼此完全斷開。有一個IFrame和它的父母溝通的唯一方法是通過客戶端腳本。

MasterPages讓您能夠設置ContentPlaceHolders並使用服務器端代碼來操作輸出的最終HTML。

+1

是的。人們普遍認爲,IFrames應該是獲取內容在您的網站上展示的最後手段。如果可能的話,你應該直接將這些內容放到你的頁面上(通過數據庫,網絡服務等)。使用IFrame也會影響您的搜索引擎排名,因爲它可能無法獲得IFrame所在網站的索引。 – 2011-02-25 03:45:44

0

當你說「爲什麼很多網站使用iframe開發」時,你在說哪些網站?我不認爲自從九十年代以來我就已經看到了基於iframe的佈局。目前,iframe主要用於讓第三方控制廣告,在支持AJAX的頁面上跟蹤歷史記錄,或者作爲解決同域AJAX規則(「JSONP」)的解決方法。

就佈局而言,每個人都使用一些等同的母版頁。

0

Masterpages的方式更加SEO友好比任何其他iframe解決方案

相關問題