猿问

如何在JavaScript中按类获取元素?

如何在JavaScript中按类获取元素?

我希望替换html元素中的内容,因此为此使用了以下函数:

function ReplaceContentInContainer(id,content) {
   var container = document.getElementById(id);
   container.innerHTML = content;}ReplaceContentInContainer('box','This is the replacement text');<div id='box'></div>

上面的工作原理很好,但问题是我在一个页面上有多个html元素,我想替换它的内容。所以我不能使用ID而是类。我被告知javascript不支持任何类型的内置GET元素的类函数。那么,如何修改上面的代码,使其与类而不是ID一起工作呢?

我不想为此使用jQuery。


POPMUISE
浏览 501回答 3
3回答

米琪卡哇伊

这段代码应该可以在所有浏览器中运行。function&nbsp;replaceContentInContainer(matchClass,&nbsp;content)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;elems&nbsp;=&nbsp;document.getElementsByTagName('*'),&nbsp;i; &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(i&nbsp;in&nbsp;elems)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(('&nbsp;'&nbsp;+&nbsp;elems[i].className&nbsp;+&nbsp;'&nbsp;').indexOf('&nbsp;'&nbsp;+&nbsp;matchClass&nbsp;+&nbsp;'&nbsp;') &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;>&nbsp;-1)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elems[i].innerHTML&nbsp;=&nbsp;content; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}}它的工作方式是循环遍历文档中的所有元素,并搜索它们的类列表。matchClass..如果找到匹配,则替换内容。jsFiddle示例,使用Vanilla JS(即没有框架)
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答