本文介绍了带有getElementByClassName的innerHTML不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
没有 getElementByClassName function但是,因为可以有多个元素给定类。
您可以替换
document.getElementByClassName('textbox')
with
document.getElementsByClassName('textbox')[ 0]
编辑您的问题后编辑:
此功能在IE8上不可用。如果您想在此浏览器上使用它,您必须添加一个填充程序,例如。
This one works:
<td onmouseover="document.getElementById('textbox').innerHTML='Hidden text'" onmouseout="document.getElementById('textbox').innerHTML='Show text'"> <div id="textbox">Show text</div> </td>But this one doesn't:
<td onmouseover="document.getElementByClassName('textbox').innerHTML='Hidden text'" onmouseout="document.getElementByClassName('textbox').innerHTML='Show text'"> <div class="textbox">Show text</div> </td>How can I fix this? I need a class to use it more than once.
解决方案There's no getElementByClassName function but a getElementsByClassName one because there can be more than one element with a given class.
You could replace
document.getElementByClassName('textbox')with
document.getElementsByClassName('textbox')[0]EDIT following the edit of your question :
This function isn't available on IE8. If you want to use it on this browser, you must add a shim, such the one which is described in this question.
这篇关于带有getElementByClassName的innerHTML不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!