javascript - 如何添加鼠标悬停事件的索引?

标签 javascript jquery

我有两个列表。我在鼠标悬停时获取列表项的索引。例如 A 有 0 个索引。B 有 1 个索引。但我想添加换句话说,如果用户将鼠标悬停在第二个列表 A 上,则索引。它给出输出 9 而不是 0..

我第一次在第二个列表上得到0。如果用户将鼠标悬停在第二个列表上,我希望它添加第一个列表的长度。

这是我的代码 https://jsfiddle.net/e46atunm/1/

$(function() {
  $('#main-menu li').on({
    mouseenter: function() {
      console.log("mouse over: " + $(this).index())
    },
    mouseleave: function() {
      console.log("mouse leave: " + $(this).index())
    }
  });
})

最佳答案

使用 $(selector).index() 的简单情况 index() 仅索引同级。

您还可以使用 $(collectionSelector).index(element) 在您定义的集合中建立索引:

var $li =  $('#main-menu li').on({
    mouseenter: function() {
      console.log("mouse over: " + $li.index(this))
    },
    mouseleave: function() {
      console.log("mouse leave: " + $li.index(this))
    }
  });

DEMO

关于javascript - 如何添加鼠标悬停事件的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35780992/

相关文章:

javascript - Next.js 在 html 标记中渲染应用程序作为字符串

javascript - 添加音频播放器,启用和禁用选项卡

javascript - 有没有什么不显眼的方法来 Hook jQuery 方法的触发器?

javascript - 动画 jQuery UI 可拖动元素回到起始位置

javascript - 从数据库存储和检索时 FullCalendar 日期不同

javascript - 只有一个列表元素在页面加载时排在第一位

javascript - 正则表达式+Javascript 计算器?

javascript - Object.assign正在修改原始数组对象

javascript - 长 $compile 持续时间,了解 AngularJs 延迟的本质

jquery - selected.js 在 IE7 中的页面加载时使下拉列表保持打开状态