2010-01-06 41 views

回答

5

太糟糕了 - IFRAME將是一個簡單而有效的解決方案。

另一種相當簡單的解決辦法是使用3服務器,你自己的,以彙集頁面從其他兩個。

我想不出一個合理的方式在不使用iFrame的客戶端瀏覽器來做到這一點。

+0

如何彙總頁面? – DhrubaJyoti 2010-01-06 13:32:14

+2

你會編寫一個Web應用程序,它本身可以作爲一個HTTP客戶端到2個或更多的其他站點,拉入他們的文本,將它合併成一個文檔並將其返回到原始客戶端的瀏覽器。 – 2010-01-06 13:53:16

+0

@DhrubaJyoti聚合頁面是很容易的部分 - 我想知道你要如何顯示他們與幀/ iframes。 – meagar 2010-01-06 13:53:43

6

你可以用好老幀(不IFRAME):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" 
    "http://www.w3.org/TR/html4/frameset.dtd"> 
<html> 
<head> 
<title>This &amp; That</title> 
</head> 
<frameset cols="50%,50%"> 
    <frame src="http://site1.example.com/"> 
    <frame src="http://site2.example.com/"> 
</frameset> 
</html> 
+1

對於「非IFRAME」爲+1 – ohnoes 2010-01-06 13:44:07

+0

是的,幾乎是IMO的最後一次有效使用。 – meagar 2010-01-06 13:52:43

+0

呵呵,不錯的答案! +1(但票選不足) – 2010-01-06 13:53:50

2

退房this example在動態駕駛的網站。它使用AJAX將HTML頁面的內容動態加載到DIV元素中。 這將只對本地文件的工作(試圖包括一個頁面到同一域中的另一頁),但如果你可以在服務器端使用PHP,你可以使用jQuery的解決了這一點(check out this article)。

0

而且不能顯示在不使用iFrame或幀在同一頁面不同勢域。 不能成爲瀏覽器安全的利器。

+0

代理腳本允許您繞過此操作。 – ceejayoz 2010-01-06 20:58:24

0
<h1>Welcome to site A</h1> 
Here is the weather from site B <hr /> 
<?php 
    include("http://siteb.com/weather.htm"); 
?> 

當然,在實踐中,您需要解析從siteB返回的DOM,以確保組合輸出格式良好 - 即剝離...和XML糖。並去掉或erqrite任何引用包含在HTML中的網站B的文件 - 如JavaScript,圖片等

,並銘記,這是要打破任何花哨的CSS。

C.

0

使用此answer

,但只是添加另一個AJAX調用第二個網站。然後使用簡單的代理來打敗瀏覽器內置的跨域安全性。在PHP中有這樣的事情:

<?php 
header('Content-Type: text/plain'); 
$html = file_get_contents("http://siteb.com") 
echo $html; 
?> 
相關問題