我有一个锚标记和悬停,我希望我的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>
答案 0 :(得分:2)
你创建了一个对象而不是数组..所以你的错误是Unexpected token ,
检查你的控制台......
更改
var CONTRIBUTORS = {"abc", "def"};
到数组
var CONTRIBUTORS = ["abc", "def"];
它应该可以工作..虽然你的小提琴缺少在鼠标悬停方法中调用的populateContributorsInArray
函数..