我正在尝试使用从外部页面上的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
编辑:为了澄清,我不想开始讨论上面代码的实用性。我知道有更好的方法可以做到这一点但是,这是演示/测试项目,很可能从没有本地服务器运行的本地机器运行。
答案 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()
。