1
我想要做的是通過它在div中的位置來標識元素。我已經嘗試了下面的代碼,它的工作原理,但我很好奇,如果有更有效的方法來做到這一點。jQuery - 通過它在兄弟姐妹中的位置(索引)識別對象
HTML:
<div class="container">
<button>One</button>
<button>Two</button>
<button>Three</button>
</div>
<div class="result"></div>
的JavaScript:
$('.container button').on('click', function(e) {
clickedBtn = e.target;
btnNum = 0;
$('.container button').each(function(i) {
if ($(this)[0] === clickedBtn)
btnNum = i+1;
});
$('.result').text('Clicked button #' + btnNum);
});
啊,這麼多的jQuery的功能來跟蹤!這非常好,這正是我需要的。謝謝! – CaptSaltyJack 2014-11-05 07:35:03
@CaptSaltyJack只是提到你的原始代碼:'$(this)[0]'與'this'相同,'e.target'可以簡單地'this',這是個好主意(在未來的情況下)在'btnNum = i + 1;'之後添加'return false;'以防止下一次不必要的'.each()'迭代。請記住'.index()'統計所有同胞([fiddle示例](http://jsfiddle.net/qvgkbdo3/)) - 它可能會導致將來不正確的行爲。不要忘記標記答案是正確的。 – Regent 2014-11-05 07:42:28