本文介绍了getElementsByTagName和getElementsByClassName在IE8中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
示例来源:
<div>
<br />
<a name="IDATLQHE"></a>
<h2 class="subhead" xmlns="">
<div class="dummy">
<div class="dummyy">
<span>abcd</span>
</div>
<div class="dummyyy">
<span>
<a title="google" href="http://google.com">google.com</a>
</span>
</div>
</div>
</h2>
</div>
需要输出:
我想要替换< div class =dummyyy>
元素中< a>
元素的内容< div class =dummyy>
元素的内容。
I want to replace the contents of the <a>
element in the <div class="dummyyy">
element with the contents of the <div class="dummyy">
element.
写的JavaScript:
JavaScript written:
<script type="text/javascript">
var divs = document.getElementsByClassName('dummy');
for(var i = 0, len = divs.length; i < len; i++)
{
var div = divs[i],
h2 = div.getElementsByClassName('dummyyy'),
h3 = div.getElementsByClassName('dummyy');
if(h2.length === 1)
{
var aa= h2[0],
aaa=aa.getElementsByTagName('a');
if(h2.length === 1 && h3.length === 1)
{
aaa[0].innerHTML = h3[0].innerHTML;
h3[0].innerHTML=null;
}
}
}
此脚本工作正常Firefox,但不在IE中。
This script is working fine in Firefox, but not in IE.
错误时间:
getElementsByClassName
aaa=aa.getElementsByTagName('a')
任何人都可以提供帮助。
Can any one help on this.
谢谢
推荐答案
getElementsByClassName 。如果您不需要IE7支持,可以将其替换为
div.querySelectorAll(。dummyy)
getElementsByClassName
is not supported by IE8. If you don't require IE7 support, you can replace it with div.querySelectorAll(".dummyy")
这篇关于getElementsByTagName和getElementsByClassName在IE8中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!