Jquery获取触发事件的类的特定实例
Jquery get specific *instance of the class* that triggered an event
我正在制作一款游戏,其中JSON数据被转换成一堆绘制在主地图顶部的类。每个图标都是一个20x20像素的小框。将光标移到每个方框上意味着改变另一个div的html,以传递每个类值中"隐藏"的信息。
我的代码是这样的:$('.City_Palace').mousemove(function(e) {
e.stopPropagation();
var x = Math.floor((e.pageX - this.offsetLeft + $("#scrollWindow").scrollLeft()) / tileSize);
var y = Math.floor((e.pageY - this.offsetTop + $("#scrollWindow").scrollTop())/tileSize);
var text = $('#WorldMapMessage').html();
alert(e.target.className);
$('#WorldMapMessage').html(x +', '+ y + " " + $(this).val());
// alert($(this).val());
});
此代码当前显示一个警告框,其中包含导致事件的类名。但是,我需要知道的是. city_palace类的哪个实例触发了事件,这样我才能显示适当的文本。如果我使用id而不是类,这将是微不足道的,但为此,我需要使用类并知道哪一个正在调用事件。
谢谢你的帮助!
您似乎已经在这样做了。
在传递给.mousemove()
的函数中,您可以访问this
,它指的是正在悬停的元素的特定实例。您可以使用它从该元素的特定实例中获取您可能需要的任何其他内容。例如:
$('.City_Palace').mousemove(function(e) {
// $(this) is the specific instance of .City_Palace that's being hovered on.
alert($(this).attr("class")); // Alert the class name.
});
相关文章:
- 如何用javascript调用函数,然后在滚动事件中调用该函数的特定实例
- 如何在事件函数中访问窗口实例
- Jquery将事件绑定到页面上的多个实例
- 允许在自定义事件上“查找使用实例”的 IDE
- JavaScript和将事件实例传递给函数
- 处理Twitter Flight组件的多个实例的事件
- 只为构造函数的所有实例触发一次事件侦听器
- 如何访问类实例上的事件侦听器
- 触发不同实例设置的 jQuery 自定义事件
- 如何将事件绑定到 ember 中动态创建的实例.js
- 下拉列表更改事件直到第二个实例才触发
- 事件保持绑定到僵尸实例
- Extjs 5.1 事件在 Ext.select.不能在 Ext.dom.Fly 实例上使用 addListener()
- 如何将“拖动启动”事件与 CKEditor 实例分离
- 创建实例时覆盖的主干视图类事件
- 从谷歌日历 API 中的事件列表中检索实例
- 如何删除多维数据集.js实例的一天之后的事件
- 如何使用 Ember.sendEvent 将事件发送到每个实例化的控制器
- jQuery类选择器事件绑定是否将eventHandler附加到每个实例
- Jquery变量直到单击事件才实例化