【发布时间】:2020-06-23 02:03:54
【问题描述】:
我已向父级#carousel-thumbs 添加了一个点击事件。
carouselThumbsContainer.onclick = function(ev) {
var target = ev.target; // which child was actually clicked
}
<ul id="carousel-thumbs" class="l-grid">
<li class="active"><a class="active" href="#"><img src="img/carousel-1-th.jpg" /></a></li>
<li><a href="#"><img src="img/carousel-2-th.jpg" /></a></li>
<li><a href="#"><img src="img/carousel-3-th.jpg" /></a></li>
<li><a href="#"><img src="img/carousel-4-th.jpg" /></a></li>
</ul>
我想返回被点击元素相对于其父元素的索引。所以如果用户点击了第二个
//////////////////////////////////// 当前可行但我希望简化的解决方案:
//Add a click event to each thumn in the thumbs container
for (var j = 0, len = carouselThumbsContainer.children.length; j < len; j++){
(function(index){
carouselThumbsContainer.children[j].onclick = function(){
console.log(index);
}
})(j);
}
对 Javascript 不太了解,我认为一定有更简单的方法,但也许没有。
【问题讨论】:
-
点击的孩子的索引是什么意思?你的意思是它的子位置?即第一个孩子,第二个孩子等?
-
是的,它的子位置。父级是一个
- ,我想返回被点击的
- 的索引。
标签: javascript