加载网站特定部分的iframe

时间:2012-12-31 18:27:23

标签: jquery html

我想使用jQuery和AJAX加载一部分外部网站内容,因为我已经读过你可以这样做。我只想按照这篇文章iframe to Only Show a Certain Part of the Page中的说明加载网站的一部分。

我对我正在尝试加载的网站拥有完全版权。 谢谢, etrey

2 个答案:

答案 0 :(得分:3)

为此,您可以在主页面中创建一个div

<div id='iframediv'>
</div> 

然后在你的JS代码中提到以下行

$('#iframediv').load('https://www.google.co.in #DIVNAME');

在这里,您必须将https://www.google.co.in替换为目标网址。并使用目标网页中的目标div id 替换DIVNAME

<强>更新

如果由于安全问题而访问不同域中的页面,则此方法将不起作用。在这种情况下,您可以执行以下操作

  1. 在您的网络中创建New Server-side Page (say GetContent.aspx) 应用程序(以便域名相同)。
  2. 然后在服务器端,您可以加载所需的页面(来自不同的页面) 域)并提取所需的部分。如果您无法提取该部分,请加载整个页面。
  3. 然后将此内容加载到New Server-side Page (say GetContent.aspx)
  4. 现在,您可以使用GetContent.aspx功能显示此.load。如果您使用的是完整页面(不提取),请使用以下代码加载所需的内容div。

    $('#iframediv')。load('https://www.google.co.in #DIVNAME');

答案 1 :(得分:1)

您声明这是一个外部网站。如果网站在同一个域中,您可以使用jquery的加载方法来执行此操作

$('#iframediv').load('https://www.google.co.in #DIVNAME');

如果页面是外部的,您将无法执行此操作。您可以查看外部页面,看看是否有命名锚点。如果有,您可以在iframe的src中使用该锚点,以使iframe开始滚动到该位置。我不认为它会让你得到你想要的,但它是你能够在外部域上获得最接近的页面。

<iframe src="http://externalsite.com/page.html#nameofanchor"/>