jQuery .each()迭代由HTML类-不一致的行为取决于顺序类定义
jQuery .each() iteration by HTML class - inconsistent behavior depending on order class is defined
我使用jQuery的$.each()
方法迭代所有DOM元素,这些元素是某个类(例如class="definition"
)的成员,然后将每个元素的ID打印到控制台。然而,迭代似乎只对首先定义了指定类的元素起作用。因此,对于具有多个类的元素,如果指定的类没有在HTML中首先列出,它就会被"跳过"。
:
HTML<p class="definition" class="snippet" id="P1">Paragraph 1</p>
<p class="open" class="definition" class="snippet" id="P2">Paragraph 2</p>
<p class="snippet" class="definition" id="P3">Paragraph 3</p>
<p class="definition" class="snippet" id="P4">Paragraph 4</p>
<p class="definition" id="P5">Paragraph 5</p>
JavaScript $( document ).ready(function() {
$(".definition").each(function() {
console.log(this.id);
});
});
在上面的示例中,控制台记录P1、P4和P5的id,但不记录其他的id。
是否有一个原因,由类定义的类型顺序应该决定是否jQuery的$.each()
识别类元素?
使用
<p class="definition snippet" id="P1">Paragraph 1</p>
。
当你第二次设置类属性时,它会重写第一个。
:
<p class="definition" class="snippet" id="P1">Paragraph 1</p>
与
相同<p class="snippet" id="P1">Paragraph 1</p>
你也可以使用控制台检查真实的html代码
相关文章:
- 用嵌套函数和默认函数定义函数
- Dojo不解析自定义小部件的模板html中的小部件声明性
- 为什么“;未定义的“;在JavaScript中结束循环
- 要求未定义JS回调参数
- 控制台返回var不是't定义,但它是
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 如何检查管道中未定义的项目
- TypeError:无法读取属性'推'未定义的JavaScript
- jQuery自定义验证比较多个输入的序列
- 查看JS对象的所有键,甚至是getter定义的键
- fetch() 函数未在 Ubuntu Chromium 浏览器上定义
- $window.ga在AngularJS事件中未定义
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 未捕获的TypeError无法读取未定义的属性socialsharing
- 如何制作我的自定义指令取决于 ng 模型
- 自定义选项值取决于屏幕尺寸
- Javascript自定义排序功能取决于用户输入
- 过滤谷歌地图自定义覆盖取决于他们是否落在当前的地图边界
- jQuery .each()迭代由HTML类-不一致的行为取决于顺序类定义