我正在尝试$.load()
来自其他网页(foo.html
)的一些数据。假设我希望我当前的<title>Current</title>
与foo的标题<title>Foo</title>
相同。
我在做的是:
$("title").load("foo.html title");
问题是我使用<title>
标记获得了foo的标题:
<title><title>Foo</title></title>
它显然不起作用。
我怎么才能得到foo标题的文字?
答案 0 :(得分:4)
这感觉就像一个黑客但它有效。
$("<div>").load("foo.html title", function(){
$('title').text($(this).text());
});
即使这是一个黑客,我制作了一个你可以使用的小插件。
$.fn.loadText = function(path, selector){
var node = this[0].nodeName.toLowerCase();
$("<div>").load(path + " " + selector, function(){
$(node).text($(this).text());
});
}
像这样使用:
$('title').loadText("some path", 'title');
如果您想加载title
,另一个标记的文字......
$('title').loadText("some path", 'div#foo');
答案 1 :(得分:2)
我会使用全局$.get(url, data, success)
而不是jquery上的建议。这工作(测试):
$.get('foo.html', function(responseText, textStatus, XMLHttpRequest) {
$('title').text($(XMLHttpRequest.responseXML).find('title').text());
});
答案 2 :(得分:-2)
试试这个......
$("title").load("foo.html").find("title").text()