我应该如何定义一个重复出现的HTML元素&用JavaScript找到它们
How should I define a recurring HTML element & find them all with JavaScript?
我一直在努力找出定义某个元素的最佳方法,该元素在整个页面中出现任意次数,而不需要:
- "name"属性;或
- 新元素(XHTML)的定义
我本质上是在"name"属性之后;然而,它看起来是多余的、过时的,并且部分贬值。
我希望使用JavaScript隔离和操作上述元素,最好避免使用jQuery。有合理的解决方案吗?到目前为止,我想到了:
- 遍历具有特定标记的所有元素,并检查特定className;或
- 在元素上使用增量ID(例如el1、el2和el3),并在序列中迭代,直到getElementById返回null(感觉很糟糕,只是我想要的)
感谢:)
querySelectorAll
返回文档中与指定选择器组匹配的元素列表(使用文档节点的深度优先预排序遍历)。返回的对象是NodeList。
参考:https://developer.mozilla.org/en/DOM/Document.querySelectorAll
您可以使用querySelectorAll
,这是一个可以在该页面的javascript控制台中运行的示例。
var myList = document.querySelectorAll("a");
for (var c= 0 ; c < myList.length; c += 1) {
console.log(myList[c]);
myList[c].onmouseover= function () {alert(this)}
}
如果您有意引用className,则可以使用document.getElementsByClassName()
,尽管IE 8及更早版本不支持此功能。对于这些版本,您可以使用其他技术之一。FWIW,我相信jQuery就是这样做的。
- 您可以使用className-
document.getElementsByClassName()
- 在HTML 5中,您可以使用数据属性-
document.querySelectorAll('[...]');
相关文章:
- 指令的模板必须只有一个根元素:With restrict E&替换true
- HTML5-画布元素&自定义光标
- Javascript链接-试图设置元素值-奇怪的行为chrome&安卓
- 将点击事件绑定到新元素&使得ID'是独一无二的
- 无法获取interact.js拖动&放弃交互以使用Boostrap元素
- 组内jquery选择器的问题&在元素上循环
- 关于在动态创建的元素中添加预先样式化的类或在那里添加stying&然后
- 元素不在数组javascript&替换数组
- 阅读&更改SnapSVG中元素的旋转值
- 我应该如何定义一个重复出现的HTML元素&用JavaScript找到它们
- 自动播放HTML5音频元素&动画
- 如何移动选定元素's值&文本到另一个选择元素
- 流星.js&mongodb-如何在每个空格中传递当前元素的id
- 添加、删除&清除表中的HTML元素
- jQuery/JavaScript如何处理绑定到同一元素的多个事件处理程序&事件,以及后果
- 获取元素&对于每个功能
- 如何循环元素&数数
- Chrome扩展:显示&隐藏元素
- 使用setTimeout函数&随机函数.以设置类元素的动画
- Javascript-将具有相同类的元素推入数组&在循环中使用每个