使用jQuery使用从外部页面检索的值更改页面标题

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

标签: jquery

我正在尝试使用从外部页面上的div检索到的值来更改页面标题。所有文件都是本地文件,位于同一文件夹中,或者一旦上传就属于同一域名。

这是外部网页上的html(settings.html):

<div id="clientName">Some Company</div>

我正在使用.load函数从不同的页面获取该div的内容(index.html):

$('title').load('settings.html #clientName');

一旦执行页面标题更改为settings.html页面(file:// blahblah)的文件路径,而不是“Some Company”。但是如果我尝试将相同的内容加载到div中,一切正常,就像这样:

$('div.test').load('settings.html #clientName');

我做错了什么?

谢谢, Klikerko

编辑:为了澄清,我不想开始讨论上面代码的实用性。我知道有更好的方法可以做到这一点但是,这是演示/测试项目,很可能从没有本地服务器运行的本地机器运行。

3 个答案:

答案 0 :(得分:0)

不要使用$('title') IE不太支持它。而是使用document.title = 'whatever';以下将起作用

document.title = $('<div/>').load('settings.html #clientName'); 

答案 1 :(得分:0)

我认为你不能使用jQuery。只需使用好的'

document.title = $('<div/>').load('settings.html #clientName');

答案 2 :(得分:0)

我希望这需要与回调异步完成。

$('<div/>').load('settings.html #clientName', function(response, status, xhr) {
    $("title").text($(this).text());
    //or
    //document.title = $(this).text();
});

document.title = $('<div/>'). ...将在星期日的一个月内无效。您不能将jQuery对象分配为文本。

如果@Magicmarkker关于IE不能使用$("title")...,那么请使用document.title = $(this).text()