0
jQueryベースのドロップダウンメニューを使用していて、ドロップダウンアニメーション(slideDown)に遅延を追加したいとします。 setTimeoutを実装する方法を見て回りましたが、私のコードで動作させることができませんでした。誰でも助けることができますか?ドロップダウンナビゲーションのjQuery setTimeout
これは私のコードです:
$(document).ready(function() {
function megaHoverOver(){
$(this).find(".sub").slideDown(500);
}
function megaHoverOut(){
$(this).find(".sub").slideUp(150);
}
var config = {
sensitivity: 2, // number = sensitivity threshold (must be 1 or higher)
interval: 0, // number = milliseconds for onMouseOver polling interval
over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
timeout: 0, // number = milliseconds delay before onMouseOut
out: megaHoverOut // function = onMouseOut callback (REQUIRED)
};
$("#mainnav-first li").hoverIntent(config);
});
ちなみに、私は次のことを試してみましたが、それはうまくいきませんでした:
$(document).ready(function() {
setTimeout(function megaHoverOver(){
$(this).find(".sub").slideDown(500);
}, 500);
function megaHoverOut(){
$(this).find(".sub").slideUp(150);
}
var config = {
sensitivity: 2, // number = sensitivity threshold (must be 1 or higher)
interval: 0, // number = milliseconds for onMouseOver polling interval
over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
timeout: 0, // number = milliseconds delay before onMouseOut
out: megaHoverOut // function = onMouseOut callback (REQUIRED)
};
$("#mainnav-first li").hoverIntent(config);
});
私は.delayを試しましたが、ユーザーがトリガーからロールアウトすると、ドロップダウンが降りないようにします。 .delayを指定すると、何に関係なくアニメーションが実行されます。 – Julesfrog