我正在使用代码使用javascript文件将javascript添加到我的页面..
我的代码是:
alert("works");
addScript('http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js');
addScript('js/pdttrack/jquery.titlealert.js');
addScript('js/pdttrack/jquery.msgbox.min.js');
function addScript(filename) {
var tagPosition = document.getElementsByTagName('body');
var scriptElement = document.createElement('script');
scriptElement.setAttribute('type', 'text/javascript');
scriptElement.setAttribute('src', filename);
tagPosition.appendChild(scriptElement);
alert("added "+ scriptElement);
}
...但是最后一次警报没有开始..似乎
tagPosition.appendChild(scriptElement);
没有解雇所有人......
答案 0 :(得分:4)
尝试更改:
var tagPosition = document.getElementsByTagName('body');
要:
var tagPosition = document.getElementsByTagName('body')[0];
由于getElementsByTagName
返回NodeList
Array
,因此您需要为数组指定index/key
。
您也可以这样做:
var tagPosition = document.body;
了解有关MDN的更多信息:
答案 1 :(得分:4)
getElementsByTagName
返回具有给定标记名称的元素的列表。该列表没有名为appendChild
的方法。你想抓住第一个,并对其进行操作:
document.getElementsByTagName('body')[0]
更多信息: