jquery中的速记

jquery中的速记,jquery,Jquery,我有以下jquery代码: $(document).ready(function() { $("#masthead ul li").mouseover(function(){ $("#masthead ul li").removeClass("cr"); $(this).toggleClass("cr"); }); }); $(document).ready(function() { $("#intUl li").mouseover(function(){

我有以下jquery代码:

 $(document).ready(function() {
$("#masthead ul li").mouseover(function(){
    $("#masthead ul li").removeClass("cr");
    $(this).toggleClass("cr");
});
   }); 

  $(document).ready(function() {
$("#intUl li").mouseover(function(){
    $("#intUl li").removeClass("cr");
    $(this).toggleClass("cr");
});
}); 
我们可以为两个类似的jquery代码编写速记吗? 提前谢谢

$('#masthead ul li, #intUL li').mouseover(function() {
    $(this).siblings().removeClass("cr");
    $(this).toggleClass("cr");  
});
与原代码相同;但是,不确定为什么删除类只是为了读取它。如果你想让它变成flash或其他东西,我敢肯定它不会像你期望的那样工作

误解原意;一位评论员为我澄清了问题,我修复了它:)

试试这个:

 $(document).ready(function() {
    $("#masthead ul li, #intUl li").mouseover(function(){
        $(this).removeClass("cr");
        $(this).toggleClass("cr");
    });
 }); 

这实际上不会达到他想要达到的目的。您正在从鼠标移动到的同一元素中删除cr类,然后切换它。他想先从所有兄弟姐妹中删除它,然后将其添加到鼠标悬停区域。所以一次只有一个LI会有“cr”。@Parrots我错过了这一点,玩得好的ToggleClass应该是addClass,因为removeClass不会应用于源元素,除非你这样做。兄弟姐妹()。和self()?嘿,jasmine,看起来你已经在这里呆了2个月了,还没有接受答案!如果你想问一些问题,人们会想帮你更多。
 $(document).ready(function() {
    $("#masthead ul li, #intUl li").mouseover(function(){
        $(this).removeClass("cr");
        $(this).toggleClass("cr");
    });
 }); 
$('#masthead ul li, #intUL li').mouseover(function() {
    $(this).addClass('cr').siblings().removeClass('cr');
});