如何在onmouseover事件上从ListView获取图像索引?

时间:2018-06-22 15:09:14

标签: jquery kendo-ui kendo-listview

我有一个显示图像的ListView,单击它可以获取图像的索引,但是当我仅将鼠标悬停在图像上时无法获取索引。

这就是我所在的地方

<img onmouseover="ImageListHover(this, $(this));" id="#=ItemID#" src="../Images/CatalogImages/#= CheckForImagesURL(FilePreview) #" alt="#: ItemName # image" />

mouseover事件上正在调用的函数是:

function ImageListHover(a, b) {
    console.log("index from a is: " + a.index());
    console.log("index from b is: " + b.index());
}

我正在遍历this和$(this)来查看是否可以从这两个索引中获取索引,但无济于事。

编辑

这里是代码的链接,由于我使用的是我修改的示例,因此我不得不将其放置在kendo dojo上。Example

1 个答案:

答案 0 :(得分:1)

问题是因为您定位的img元素不是同级,因此它们都在各自容器内的索引0上。

要解决此问题,请为index()提供选择器,以明确指定要在其中检索索引的集合:

function ImageListHover(a, b) {
  console.log("index from b is: " + b.index('.product img'));
}

还请注意,使用on*事件属性是一种过时的技术,应避免使用。改用不显眼的事件处理程序:

$(function() {
  // your kendo setup here...

  $('.product img').on('mouseenter', function() {
    console.log($(this).index('.product img'));
  });
});