2011-03-05 77 views
0

我希望能够将外部网站加载到div中 - 例如googles主页。使用jquery将外部网站加载到div

我用尽:

$('#myDiv').load("http://www.google.com"); 

有没有这样的运气。

任何帮助将不胜感激。谢谢。

+0

为什么你不只是使用iFrame的任何特定原因? – JasCav 2011-03-05 20:52:38

回答

0

你想要做什么是危险的,应该避免。你已经给出了一个跨域请求的例子,大多数浏览器阻止你这样做。您违反了same-origin policy。如果您真的必须使用<iframe src="http://www.google.com"></iframe>

还有一个假设的解决方案,jQuery和YQL,但我会让你嗅出那一个。

+0

我同意。这可能是危险的 – Groovetrain 2011-03-05 20:57:22

0

我想你只能使用jQuery加载来自同一Web服务器的内容,但我可能是错的

1

您不能直接执行此操作,因为您尝试加载的网站位于不同的域,并且浏览器策略禁止这样做。有两种方法:

  • JSONP - 只会用页面,则可以编辑
  • PHP代理:通过PHP脚本网站上的位置
+0

除了PHP之外,还有更多的语言可用于构建HTML代理。 – 2011-03-05 21:03:37

0
$('#myDiv').html('<iframe src="http://google.com" width="100%" height="300">'); 

基本加载页面出现,但会做的伎俩

1

您的浏览器是专门设计,以防止你这样做。阅读关于same origin policy的更多信息。

您有两种加载内容的选项:您可以将外部内容放置在IFRAME中,这会让您的脚本导致显示不同的页面,但不会以编程方式与其内容进行交互;或者你可以将你自己的服务器托管的内容放入使用jQuery的代码中,例如你的问题中的代码。