javascript无法获取数据索引的索引号

当我使用 console.log(currentIndex) 时,NaN 就出现了。我应该怎么办?我无法获得有关数据索引的任何修复。我什至可以为此使用数据索引吗?


$(".element").mouseover(()=> {

  var currentIndex = parseInt($(this).data('index'));

  console.log(currentIndex);

});

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<i class="element" data-index="0">0</i>

<i class="element" data-index="1">1</i>

<i class="element" data-index="2">2</i>

<i class="element" data-index="3">3</i>

<i class="element" data-index="4">4</i>


撒科打诨
浏览 124回答 2
2回答

12345678_0001

这不是你所期望的。当你使用粗箭头函数时,() => {}你说“this”不应该切换到你的本地上下文中。通过使用经典function样式,您可以设置this为预期的元素并且它可以工作。$(".element").mouseover(function()&nbsp; {&nbsp; var currentIndex = parseInt($(this).data('index'));&nbsp; console.log(currentIndex);});<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><i class="element" data-index="0">0</i><i class="element" data-index="1">1</i><i class="element" data-index="2">2</i><i class="element" data-index="3">3</i><i class="element" data-index="4">4</i>

杨__羊羊

$(".element").mouseover((e) => {&nbsp; var currentIndex = parseInt($(e.target).data('index'));&nbsp; console.log(currentIndex);});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript