2012-06-22 20 views
8

bir şey yapın Bence başlık oldukça açıklayıcı.Bunu tıklatın VEYA O halde, bir şey

Kullanıcı, bir bağlantıda VEYA bir yer paylaşımı üzerine tıkladığında bir div kapatmak istiyorum.

$("#close-search").click(function() { 
    $("#branding #searchform").fadeOut("fast"); 
    $("#global-overlay").fadeOut("fast"); 
}); 

$("#global-overlay").click(function() { 
    $(this).fadeOut("fast"); 
    $("#branding #searchform").fadeOut("fast"); 
}); 

Yoksa şöyle bir fonksiyon yazabiliriz: Ben sadece çok benzeyen iki fonksiyonlar yazabilir biliyorum

function closeSearch { 
    $(this).fadeOut("fast"); 
    $("#branding #searchform").fadeOut("fast"); 
} 

$("#close-search").click(function() { 
    closeSearch(); 
}); 

$("#global-overlay").click(function() { 
    closeSearch(); 
}); 

Bunu denedim, ama işe yaramadı.

$("#close-search", "#global-overlay").click(function() { 
     $("#branding #searchform").fadeOut("fast"); 
     $("#global-overlay").fadeOut("fast"); 
    }); 

Ancak bunu bir satırda yazmak mümkün mü? ($("#close-search" OR #global-overlay") gibi bir şey)

cevap

21

virgülle ayrılmış araçlar şu ya da bu

$("#close-search, #global-overlay") 

Çoklu selector

2

bu

$("#close-search, #global-overlay").click(function() { 
     $("#branding #searchform").fadeOut("fast"); 
     $("#global-overlay").fadeOut("fast"); 
}); 
0

Untested deneyin:

012:

bu deneyin

$("#close-search, #global-overlay").click(function() { 
     $("#branding #searchform").fadeOut("fast"); 
     $("#global-overlay").fadeOut("fast"); 
    }); 

seçicideki dizenin bir dizi gibi bölünmediğine dikkat edin - bunun yerine Sizzle seçici bunu sizin için yapar.

İlgili konular