我有一個導航菜單,懸停後(使用hoverIntent插件和tweenmax動畫)替換與相關的背景圖像的股利。我有這一切工作正常,但我難住的是如何防止在當前選定的元素上重複的動作。例如,如果您將鼠標懸停在第一個上,然後將鼠標懸停在其上,則我不希望在您將鼠標懸停在第一個鼠標上時重複該操作,因爲它已被選中。附上的鏈接我的小提琴http://jsfiddle.net/olichalmers/5csofnhz/1/防止多個功能,如果當前選擇
var homeNav = function() {
var tgt = $(this);
$("#homeImageNav a ").hoverIntent({
over: homeNavOver,
out: homeNavOff,
interval: 0
});
function homeNavOver() {
var tgt = $(this);
var bgHold = $("#bgHolder");
var bg = tgt.attr('data-bg');
if (!tgt.hasClass('current')) {
TweenMax.set($("#bgHolder"), {
opacity: 0,
background: bg,
scale: 1.1
});
TweenMax.to(bgHold, 1.5, {
opacity: 1,
scale: 1,
});
}
//tgt.addClass('current');
}
function homeNavOff() {
//if (tgt.hasClass('current')) {
//tgt.removeClass('current');
//}
}
};
這裏是homeNav功能。
喜歡的東西[這](http://jsfiddle.net/5csofnhz/4/)? – lshettyl
在你的'homeNavOver'函數中,你在設置背景前檢查'if(!tgt.hasClass('current'))''。但是你已經註釋掉了'tgt.addClass('current');'所以它永遠不會是'.current'。換句話說,你無法判斷它是否被選中並採取相應的行動。 –