任何人都知道原因:
var strId = "xyz";
var oSectionOuter = $( "div#myr-body" ).find( "div#" + strId );
在IE7中工作(实际上IE8带有“兼容模式”),下面是HTML,但这不是吗?:
var strId = "xyz";
var oSectionOuter = $( "div#" + strId );
根据微软的“优秀”Javascript调试器,oSectionOuter最终是对整个DOM对象的引用,而不是对其中任何特定节点的引用。
<html>
<body>
...
<div id="myr-body">
...
<div id="xyz">
...
答案 0 :(得分:0)
很难从发布的HTML中看出来。
如果HTML看起来像这样:
<html>
<body>
<div id="myr-body"></div>
<div id="xyz"></div>
</body>
</html>
然后问题是:
$("div#myr-body").find("div#xyz");
这个选择器说,“找到id等于'xyz'的div,但存在于名为'myr-body'的div中。”这绝不会解决。
要使有问题的选择器工作,HTML必须如下所示:
<html> <body> <div id="myr-body"> <div id="xyz"></div> </div> </body> </html>
否则,您可能会有倍数。