我想用jQuery更改页面标题,但是在IE中不起作用,为什么?
像这样的代码:
alert( $('title').text() ); // empty in IE
$('title').text('Some Text!'); // Don't work in IE
是的,我们可以使用document.title = 'xxxx';
来更改标题内容。
我想用jQuery更改页面标题,但是在IE中不起作用,为什么?
像这样的代码:
alert( $('title').text() ); // empty in IE
$('title').text('Some Text!'); // Don't work in IE
是的,我们可以使用document.title = 'xxxx';
来更改标题内容。
$(document).prop('title', 'Some Text!');
在这里回答你原来的问题。这是一个已知的错误。
title.innerHTML
在 IE 中是只读的。看起来也innerText
有一些限制。
alert($('title').text()); // empty in IE <= 8
出现这种情况的原因是页面标题在 Internet Explorer <= 8 中有些特殊;有多特别?
document.getElementsByTagName('title')[0].firstChild; // null
当您使用jQuery.text()
它时,它会遍历元素的所有子节点并将它们的文本表示连接起来以形成最终结果;因为firstChild
属性是null
,这显然行不通。
页面标题可用作innerText
和innerHTML
属性,但尝试写入这些属性将导致“未知”运行时错误。
如果你想尽可能多地使用 jQuery,
$("title").innerHTML = $("title").attr("text", "New title");
适用于 IE8。
使用该
document.title
属性是设置或检索文档标题的简单跨浏览器方法。IE 就是不想正常播放
尝试这个
document.title = "This is new title.";