所以我在这里做了一个小例子:
这表明p元素有2个索引,而不是0(然后悬停在第一个p元素上)。为什么会这样?
$('body').on('hover', '.trn p', function() {
var ind = $(this).index();
var ps = $('.trn:visible p:eq(' + ind + ')').html();
console.log(ps);
console.log(ind);
});
答案 0 :(得分:2)
您的结构如下所示:
<div class="trn">
<img />
<h1></h1>
<p></p>
<p></p>
</div>
所以第一个<p>
是父级内的第三个项目。索引从0开始,因此第三项具有索引2.
为什么不使用$(this)
?
$('body').on('hover', '.trn p', function() {
var ind = $(this).index();
var ps = $(this).html();
console.log(ps);
console.log(ind);
});
答案 1 :(得分:0)
您可以使用最后相同的$(this)
或$(event.target)
:
$('body').on('hover', '.trn p', function(event) {
var ps1 = $(this).html(),
ps2 = $(event.target).html();
console.log(ps1);
console.log(ps2);
});