你怎么把只有网站的某个片段到iframe?(How do you put only a certai

2019-08-05 06:33发布

我期待只放一个网站的一小部分到iframe。 我会怎么做呢? 通常,当我成立了一个iframe中的一个网站(可以说雅虎),它获得了整个网站......可以说,我只是想在网站的一小部分,我会怎么做呢?

是否有可能把利润率在网站的iframe?

我希望把一个网站的iframe在我的网站上。 (如果是有道理的)

提前致谢

Answer 1:

在大多数的情况下,参考是外部的,你没有在外部页面控制。 因此,你已经滚动IFRAME内容到所需的位置。 这当然是不可能的。 是啊,有一些JavaScript的黑客,但他们都坏的解决方案,因为在页面加载之后才发生的滚动。 解决方案

你可以用该IFRAME成一个div和使用绝对顶部和左侧的CSS属性滚动DIV内容。

下面是一个例子:

#my-div
{
    width    : 400px;
    height   : 200px;
    overflow : hidden;
    position : relative;
}

#my-iframe
{
    position : absolute;
    top      : -100px;
    left     : -100px;
    width    : 1280px;
    height   : 1200px;
}

在这里,你有一个DIV与尺寸400x200px。 现在,通过移动其中的IFRAME你可以在合适的地方放置它。

<div id="my-div">
<iframe src="http://www.example.com" id="my-iframe" scrolling="no"></iframe>
</div>


Answer 2:

这不能可靠地进行,由于同源策略和相关的iframe的限制。

..同源策略是许多浏览器端的编程语言,比如JavaScript的一个重要的安全概念。 该政策..阻止访问跨不同网站上的网页大多数方法和属性

如果是在你的网站上你的网站[或代理到目标站点]然后JavaScript中的父根据需要可以修改嵌入iframe的DOM或CSS ..

如果目标网站是否通过其他手段(包括XDR / XHR +传送数据CORS ),那么这些可以潜在地以及用作劈-A-较量。 然而,这个任务没有通用的解决方案。

即使jQuery.load (使用XHR)是由同源策略的限制:

由于浏览器的安全限制,大多数“Ajax”的请求都受到同源策略 ; 该请求不能成功地从不同的域,子域,或协议检索数据。



Answer 3:

一个<iframe>给你一个完整的窗口的工作。 最直接的方式做你想做的是让你的服务器给你,只包含要显示片段的完整的页面。

作为替代方案,你可以只使用一个简单<div>并使用jQuery的load功能加载整个页面,剜出你想要的部分:

$('#target-div').load('http://www.yahoo.com');

有可能是你需要做其他事情,并且显著不同的是,内容将成为主要页面的一部分,而不是被分隔成一个单独的窗口。


你将无法操纵URL只得到了页面的一部分。 所以,你会想要做的就是通过您所选择的服务器端语言抓取的页面内容,然后解析HTML。 从那里,你可以抓住你正在寻找的特定DIV,然后打印出你的屏幕。 你也可以用它来删除不必要的内容。

使用PHP,你可以使用file_get_contents()来读取要分析,然后使用该文件DOMDocument解析它,并抓住你想要的DIV。

这里的基本思想。 这是未经测试,但应该指向你在正确的方向:

$page = file_get_contents('http://touch.facebook.com');
$doc = new DOMDocument();
$doc->loadHTML($page);
$divs = $doc->getElementsByTagName('div');
foreach($divs as $div) {
    // Loop through the DIVs looking for one withan id of "content"
    // Then echo out its contents (pardon the pun)
    if ($div->getAttribute('id') === 'content') {
         echo $div->nodeValue;
    }
}


Answer 4:

<iframe>加载完整的网站另一种方法做一个简单的方法

<iframe src="http://site.com/#content"></iframe> 

其中#内容是需要被显示的内容的div ID



文章来源: How do you put only a certain section of a website into an iframe?