當用戶在特定元素上移動鼠標時,需要顯示/隱藏級聯菜單。使用懸停功能,使用jquery很容易實現:
N.B:計時器僅用於在200ms後隱藏菜單,並不重要。懸停時顯示/隱藏級聯菜單元素
$(document).ready(function() {
var timer;
$('.element,.cascading_menu').hover(function(){
clearTimeout(timer);
$('.cascading_menu').show();
}, function(){
timer = setTimeout(function(){$('.cascading_menu').hide();},200);
});
});
我必須爲每個我想隱藏的菜單重複此代碼。
但由於我有很多菜單,我想減少代碼長度。
我的想法是使用「id懸停的元素:id菜單來顯示/隱藏」的數組。
你認爲有可能編寫一個jQuery函數,給定這個元素數組,提供顯示每個菜單,而不必編寫代碼十幾次?
你能提供一個小提琴嗎? – Anubhav
你可以刪除'setTimeout',而是使用'。延遲(200)'(我知道你說的那部分並不重要,但它可以節省幾行) – royhowie