1

我试图在第一次单击时显示此 CSS,并在下一次单击时将其删除,但 toggleClass 似乎不起作用,下面的代码也不起作用。我能得到的只是要显示的 CSS,它永远不会被删除。这适用于 iOS 上的 Safari。谢谢您的帮助!

                var menu_enabled = false;

                $('#nav a').click(function () {
                    if (menu_enabled == true) {
                        $(this).removeClass('sf-js-enabled');
                        var menu_enabled = false;
                    }
                    else {
                        var menu_enabled = true;
                        $(this).addClass('sf-js-enabled');
                    }
                });
4

3 回答 3

3

你应该结帐.toggleClass(),看起来这正是你想要的。

$('#nav a').click(function () {
    $(this).toggleClass('sf-js-enabled');
});
于 2012-02-15T22:33:54.507 回答
0

我不确定您要整体完成什么,但是 addClass 和 removeClass 应该可以正常工作。我会向您希望附加点击的元素添加一个 ID 或类,但这只是个人喜好。

$(document).ready(function(){
    $('#element').click(function(){
        if($('#element').hasClass('sf-js-enabled')){
            $('#element').removeClass();
        }
        else{
            $('#element').addClass('sf-is-enabled');
        }
    });
});
于 2012-02-15T22:49:44.227 回答
0

也许使用 .className 属性?

var menu_enabled = false;

$('#nav a').click(function () {
 if (menu_enabled == true) {
  $(this).className = "";
  menu_enabled = false;
 }else 
 {
  menu_enabled = true;
  $(this).className = 'sf-js-enabled';
 }
});
于 2012-02-15T22:44:38.883 回答