2015-04-07 77 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/ –

相关问题