我使用以下jQuery函数:
def new
@model = Model.new(visible: true)
end
现在,我想推迟" $( selector ).hover( handlerIn, handlerOut )
"部分,但我似乎无法实现这一点。我尝试过使用handlerOut
和delay()
,但他们都没有工作。我认为这是一种语法问题。这是我的JS:
setTimeout()
HTML
$(document).ready(function () {
var menuItem2 = document.getElementById('#menu_item_2');
var menuItem3 = document.getElementById('#menu_item_3');
$('#menu_item_2').hover(function () {
this.style.zIndex = "1";
menuItem3.style.zIndex = "0";
});
$('#menu_item_3').hover(function () {
this.style.zIndex = "1";
menuItem2.style.zIndex = "0";
}, function () {
$(this).delay(500).style.zIndex = "0";
});
});
答案 0 :(得分:1)
我认为你应该把它转换成纯粹的Jquery:
$(document).ready(function () {
$('#menu_item_2').hover(function () {
$(this).css({"z-index":1});
$("#menu_item_3").css({"z-index":0});
});
$('#menu_item_3').hover(function () {
$(this).css({"z-index":1});
$("#menu_item_2").css({"z-index":0});
}, function () {
$(this).delay(2000).css({"z-index" : 0,"background-color" : "red"});
});
});
尝试一下,看看它是否有效。