2015-04-07 97 views
3

我想弄清楚如何在div中加載外部頁面並將其更改爲HTML/CSS。可能嗎?在div中加載外部頁面並將其更改爲

我被卡住了Same-origin policy,因爲它不允許編輯具有不同來源的html。

爲了澄清,我想突出顯示其中的一些內容是頁面並共享它。

這樣做的限制和可能的解決方法是什麼?

+1

嘗試在您的服務器端,或者點擊此鏈接http://stackoverflow.com/questions/3076414/ways-to-circumvent-the-same-origin-policy –

+0

您應該檢查[this](https:/ /developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy)關於您嘗試加載的內部網頁的安全性和來源。 –

+0

我在這裏:http://icant.co.uk/articles/crossdomain-ajax-with-jquery/using-yql.html。但問題是它沒有加載樣式。我怎樣才能回顧yql? – rodrigocprates

回答

1

從安全角度來看,這可能是一個非常糟糕的主意,您可以在要包含的頁面上執行Ajax GET,並使用html()jQuery函數在div中注入它的內容(剝離..標籤預先)。

您將能夠修改HTML,但不會以這種方式獲取樣式表。

雖然在頁面中加載外部頁面對我來說似乎是一個壞主意,因爲如果執行遠程頁面腳本,它可能會使您暴露於XSS和其他漏洞攻擊。

另一種解決方案是使用iframe,但可能聽起來很老套。

+0

我怎樣才能輕鬆獲得樣式表? – rodrigocprates

+1

看看這裏:http://stackoverflow.com/questions/574944/how-to-load-up-css-files-using-javascript或在這裏:http://stackoverflow.com/questions/2126238/can-按需提供i-load-external-stylesheets。您還可以使用jQuery在特定元素上設置樣式 - http://api.jquery.com/css/ –

相關問題