Javascript 简化此代码:

Javascript 简化此代码:,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在寻找简化此代码的最佳方法: 组合悬停和切换功能 我试过这个: 当然可以 $(document).ready(function() { function change() { $('#shoppingBag, .overlay').css('visibility', 'visible'); $('#shoppingBag, .overlay').css('opacity', '1'); $('.icon-cart').css('c

我正在寻找简化此代码的最佳方法:
组合悬停和切换功能

我试过这个:

当然可以

$(document).ready(function() {  
    function change() {
        $('#shoppingBag, .overlay').css('visibility', 'visible');
        $('#shoppingBag, .overlay').css('opacity', '1');
        $('.icon-cart').css('color', '#cc181e');
        $('.toggle__shoppingbag').css('background-color', '#131418'); 
        $('.toolbar').css('background-color', '#0a0a0c'); 
    }

    function reset() {
        $('#shoppingBag, .overlay').css('visibility', 'hidden');
        $('#shoppingBag, .overlay').css('opacity', '0');
        $('.icon-cart').css('color', '#fff');
        $('.toggle__shoppingbag').css('background-color', 'transparent'); 
        $('.toolbar').css('background-color', '#131418'); 
    }

    $('#cart-target, #shoppingBag').hover(change, reset);
    $('#cart-target').toggle(change, reset);    
});

我建议使用CSS而不是JS进行样式设置:

$(function(){

    $('#cart-target, #shoppingBag').hover(function() {
        $('#shoppingBag, .overlay, .icon-cart, .toggle__shoppingbag, .toolbar').addClass('myhoverclass');
    }, function() {
        $('#shoppingBag, .overlay, .icon-cart, .toggle__shoppingbag, .toolbar').removeClass('myhoverclass');
    });

});
css


简化此代码:[请添加]

#shoppingBag, .overlay { visibility:hidden;visibility:hidden;opacity:0  }
body.shw #shoppingBag,body.shw .overlay {visibility:visible;opacity:1}

.icon-cart { color:#fff }
body.shw .icon-cart {color:#cc181e}

.toggle__shoppingbag { background-color:transparent }
body.shw .toggle__shoppingbag {background-color:#131418}
.toolbar { background-color:#131418 }
body.shw .toolbar {background-color:#0a0a0c}


您使用的jQuery版本是什么?当前版本的jQuery.wow中不再存在切换事件。我简直无语了。首先,将所有样式放在它们所属的css文件中。然后通过切换类来组合DOM元素的悬停事件和切换样式。这个问题似乎不在主题范围内,因为它似乎要求查看代码。
#shoppingBag.myhoverclass,
.overlay.myhoverclass {
    visibility: visible;
    opacity: 1;
}

.icon-cart.myhoverclass {
    color: #cc181e;
}

.toggle__shoppingbag.myhoverclass {
    background-color: #131418;
}

.toolbar.myhoverclass {
    background-color: #0a0a0c;
}
#shoppingBag, .overlay { visibility:hidden;visibility:hidden;opacity:0  }
body.shw #shoppingBag,body.shw .overlay {visibility:visible;opacity:1}

.icon-cart { color:#fff }
body.shw .icon-cart {color:#cc181e}

.toggle__shoppingbag { background-color:transparent }
body.shw .toggle__shoppingbag {background-color:#131418}
.toolbar { background-color:#131418 }
body.shw .toolbar {background-color:#0a0a0c}
$('#cart-target, #shoppingBag').hover(function() {
    $('body').addClass('shw');
}, function() {
     $('body').removeClass('shw');
});