jquery鼠标事件不适用于锚标记

时间:2013-07-10 09:49:30

标签: javascript jquery mouseover onmouseover

我有一个锚标记和悬停,我希望我的div显示,并应该在mouseout上隐藏。只是一个典型的jquery鼠标事件。

但是,这似乎不起作用。有人可以帮我解决这个问题。检查小提琴http://jsfiddle.net/SLLeL/

$(".contributor").on({

mouseover: function(e) {

populateContributorsInArray(this);
var mousex = e.pageX - LEFT; // Get X coordinates
var mousey = e.pageY - TOP; // Get Y coordinates
$('#myDiv').css({
    top : mousey,
    right : mousex
});

var ul_data = "";
for ( var i = 0; i < CONTRIBUTORS.length; i++) {
    ul_data = ul_data + "<li>" + CONTRIBUTORS[i] + "</li>";
}
$("#myDiv ul").html(ul_data);
$("#myDiv").stop().hide().slideToggle('fast');
$("#arrow-left").stop().hide().slideToggle('fast');

},

mouseout: function(){
    alert("hi");
//Basically hide the div
//      $("#contributors_div").stop().hide().slideToggle('fast');
//      $("#arrow-left").stop().hide().slideToggle('fast');
}
});

和HTML

<div id="myDiv">
    <div id="arrow-left"></div>
    <ul></ul>
</div>

<a class="contributor" href="#">Hover Me</a>

1 个答案:

答案 0 :(得分:2)

你创建了一个对象而不是数组..所以你的错误是Unexpected token ,检查你的控制台......

更改

var CONTRIBUTORS = {"abc", "def"};

到数组

var CONTRIBUTORS = ["abc", "def"];

它应该可以工作..虽然你的小提琴缺少在鼠标悬停方法中调用的populateContributorsInArray函数..

fiddle here