$('title')。text()在IE中不起作用

时间:2013-09-02 09:34:45

标签: javascript jquery

我想用jQuery更改页面标题,但它在IE中不起作用,为什么?

这样的代码:

alert( $('title').text() ); // empty in IE
$('title').text('Some Text!'); // Don't work in IE

是的,我们可以使用document.title = 'xxxx';来更改标题内容。

5 个答案:

答案 0 :(得分:1)

$(document).prop('title', 'Some Text!');

这是answer您原来的问题。这是一个众所周知的错误。

答案 1 :(得分:1)

title.innerHTML在IE中是只读的。看起来innerText也有一些限制。

答案 2 :(得分:1)

alert($('title').text()); // empty in IE <= 8

之所以发生这种情况,是因为在Internet Explorer中页面标题有点特殊&lt; = 8;有多特别?

document.getElementsByTagName('title')[0].firstChild; // null

当你使用jQuery.text()时,它会遍历元素的所有子节点并连接它们的文本表示以形成最终结果;因为firstChild属性为null,这显然不起作用。

页面标题可用作innerTextinnerHTML属性,但尝试编写这些属性将导致“未知”运行时错误。

答案 3 :(得分:0)

如果你想尽可能多地使用jQuery,

$("title").innerHTML = $("title").attr("text", "New title");

适用于IE8。

  

使用document.title属性是设置或检索文档标题的简单跨浏览器方式。 IE只是不想正确播放

答案 4 :(得分:-1)

试试这个

document.title = "This is new title.";