在iframe中显示来自外部页面的具有特定ID的div
问题描述:
我想从我的网站上的iframe中的外部页面显示ID =“示例”的某个div的内容,是否有可能以及如何它被完成了吗?我只能在我的网站上无法控制外部页面。我从外部网页上唯一知道的是我想在我的网站上显示的div的ID ....也许你有一个小提琴示例在iframe中显示来自外部页面的具有特定ID的div
答
构建它有许多可能性。 (服务器或客户端)。
其中之一是工作作为网络爬虫使用的NodeJS,http://net.tutsplus.com/tutorials/javascript-ajax/how-to-scrape-web-pages-with-node-js-and-jquery/
下面是一个例子,使用具有快速和cheerio的NodeJS(jQuery的操纵):
var url = 'YOUR_URL';
function getContentJSON(body) {
var cheerio = require('cheerio');
var $ = cheerio.load(body);
var content = $('div#ID').text().trim();
var result = {"content": content}
return JSON.stringify(result);
}
function requestPage(url, res) {
var request = require('request');
request(url, function (error, response, body) {
if (!error && response.statusCode == 200) {
var json = getContentJSON(body);
res.send(statusCodes.OK, json);
}
});
}
exports.get = function(request, response) {
requestPage(url, response);
};
答
如果我理解正确,只想显示您的div网站。
据我所知,由于浏览器的限制,这是不可能的。如果您只是将其加载到iframe中,则无法操作该iframe中内容的DOM。你可以尝试看看你是否可以操纵滚动条,但是我不知道这是否可行,或者是否有相同的限制条件。
另一种选择是使用AJAX加载外部页面。但是,这将是一个跨域请求,要求外部网站允许来自您的域的CORS请求。这是极不可能的。你可以在你的网络服务器上使用代理来绕过这个问题。
总之:我不认为这是可能的使用标准的JavaScript。但是可以使用服务器端代理来完成。