说我有这样的Google maps v2 GMarker:
var marker = new GMarker(point, {
icon :myicon,
title :'whatever'
});
GEvent.addListener(marker, "mouseover", function() {
myover(pointid);
});
GEvent.addListener(marker, "mouseout", function() {
myout(pointid);
});
我希望行为类似于jquery - hoverintent而不是正常的mouseover和mouseout事件,以避免在屏幕上移动鼠标并意外触摸GMarker时过度活跃。我希望只有当鼠标减速或停在标记处时才会触发我的功能。这可以使用hoverintent来解决正常的dom元素,例如表行(tr)。
我的问题是,我不知道如何使用jQuery选择GMarker。 如果无法完成,我如何以其他方式将我的GMarkers挂钩到hoverintent?
谢谢,
答案 0 :(得分:1)
我有点基于这个答案来解决这个问题: Delay jquery hover event?
这只会在没有缓慢移动鼠标光标的情况下提供延迟,但现在已足够了。
结果如下:
GEvent.addListener(marker, "mouseover", function() {
if (this.timer) {
clearTimeout(this.timer);
this.timer = null;
}
this.timer = setTimeout(function() {
myover(pointid);
}, 100);
});
GEvent.addListener(marker, "mouseout", function() {
if (this.timer) {
clearTimeout(this.timer);
this.timer = null;
}
myout(pointid);
});