使用URL从javascript获取对象而不加载文档

时间:2011-06-22 15:10:10

标签: javascript url

我有一个链接到HTML文档的URL,我想获取文档的对象而不在浏览器中加载URL。例如,我有一个名为的URL: http://www.example.com/, 我怎样才能得到这个文件的一个对象(即getElementsbyTagName)?

4 个答案:

答案 0 :(得分:0)

我猜是使用Ajax调用。

如果你从未使用过XHR,那么这很难解释,所以这里有一个链接:https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest

另一种选择是使用

构建iframe
var iframe = document.create('iframe');
iframe.src = 'http://...';

答案 1 :(得分:0)

你做不到。您最多可以省略从文档中链接到的无关文件,例如javascript或css,但是您不能只抓取文档的一部分。

一旦你有了这个文件,就可以抓住一个部分,但是你不能只抓住一个部分而不先把整个文件拿出来。

这相当于说你想要一篇文章的第二段。如果没有这篇文章,你就不知道第二段是什么,它开始或结束的地方。

答案 2 :(得分:0)

此文档是否与您运行javascript的安全域位于同一域或不同的域中。

如果它位于同一个域中,您可以选择几种方法进行探索。

您可以使用XMLHttpRequest或JQuery.get加载页面,并使用丑陋的正则表达式解析您正在寻找的数据。

或者,如果您感觉真的聪明,可以将目标文档加载到jsdom对象jQuerify中,然后使用生成的jquery对象使用简单的选择器访问您正在寻找的日期。

答案 3 :(得分:0)

如果网址位于同一个域中,则可以使用.load(),例如:

$("some_element").load("url element_to_get")

请参阅我的示例 - http://jsfiddle.net/ajthomascouk/4BtLv/

在此示例中,它从此页面获取H1 - http://jsfiddle.net/ajthomascouk/xJdFe

使用jsfiddle很难显示,但我希望你能得到它的要点?

在此处详细了解.load() - http://api.jquery.com/load/