【发布时间】:2018-03-28 05:46:09
【问题描述】:
在这里,我的网页上有两个 div,两个 div 的数据几乎相同。 接受类型属性。
我的第一个 div 属性有 type="timeline"。 和第二个 div 属性类型="slideshow"。
当我的页面加载时,它只检测到第一个 div。
但是我有一个条件,如果我的 div 类型等于幻灯片然后我的代码运行但它只检测到第一个 div。
这是我的代码。
<div type='timeline' id='slide'>
<section>
<header>Title One</header>
<article>Content</article>
</section>
<section>
<header>Title Two</header>
<article>Content</article>
</section>
<section>
<header>Title Three</header>
<article>Content</article>
</section>
<section>
<header>Title Four</header>
<article>Content</article>
</section>
</div>
var divSlide = document.querySelectorAll('#slide');
var myNodeList = divSlide.length;
for(i = 0; i < myNodeList.length; i++) {
var divMain = document.getElementById("slide");
console.log(divMain);
var align = divMain.getAttribute("type");
console.log(align);
console.log(myNodeList)
if(align=='slideshow'){
console.log("my working code");
}
}
我该怎么办。 帮助将不胜感激。
【问题讨论】:
-
ID 在 dom 中应该是唯一的。尝试用 class 替换 id
-
在 HTML 中,元素的 ID 应该始终是唯一的。因此 querySelectorAll 将始终只返回第一个元素,因为它假定没有其他元素。如果要对元素进行分组,请使用 class 而不是 id。
-
如果我的类型是可取的,那么我如何访问我的类型库然后条件执行。
标签: javascript jquery html jquery-selectors