为什么动态创建html元素的标题不会被" .title"?

时间:2017-01-19 11:58:38

标签: javascript html

我创建了新的html元素。并初始化其价值。然后,当我尝试通过el.title覆盖其标题时,它会返回undefined。但是我可以通过getElementsByTagName("title")

到达

示例如下;

var el = document.createElement( 'html' );
el.innerHTML = "<!DOCTYPE html><html><head><title>HTML Reference</title></head><body>The content of the document......</body></html>";

console.log(el.title)
**undefined**

//but the following returns the title 
el.getElementsByTagName("title")[0].text
"HTML Reference"

为什么会这样?为什么el.title会返回undefined

1 个答案:

答案 0 :(得分:4)

HTML元素对象的title属性映射到the title attribute,它找不到第一个标题元素后代。

如果你有<html title='bad place for a title'>

,你会得到一个结果