我在向IE 9中的body标签添加div时出现问题。这适用于Firefox和Chrome。
var currenturl = "the url I am loading";
$(document.body).append('<div id="overlaytransparency"></div><div id="overlaymessage"> <iframe id="overlayframe" src=' + currentUrl + ' scrolling="no" frameborder="0"></iframe></div>');
// ^ This is the line that is erorring
$("#overlaytransparency").show();
$("#overlaymessage").show();
$("#overlaytransparency").click(function () {
$("#overlaytransparency").hide();
$("#overlaymessage").hide();
});
$("#overlayframe").load(currentPath);
我在IE中收到此错误:
SCRIPT438:对象不支持属性或方法'getElementsByTagName'
提前感谢您的帮助。
答案 0 :(得分:1)
怎么样
$(document).ready(function() {
$("body").append();
});
答案 1 :(得分:1)
尝试使用$('body')
代替$(document.body).append('<div
$('body').append('<div ...
答案 2 :(得分:0)
我认为你在脚本中使用了getElementsByTagName somwhere
请参阅此ref:https://developer.mozilla.org/en/DOM/element.getElementsByTagName
注意:虽然W3C规范说元素是NodeList,但此方法在Gecko和Internet Explorer中都返回HTMLCollection。 Opera返回一个NodeList,但实现了一个namedItem方法,这使它类似于HTMLCollection。截至2012年1月,仅在WebKit浏览器中返回的值是纯NodeList。