开发者

simplify these jquery?

how can i simplify these jquery code? any idea?

   $('#expand').click(function() {
            $('.bbit-tree-elbow-plus').addClass('bbit-tree-elbow-minus');
            $('.bbit-tree-elbow-minus').removeClass('bbit-tree-elbow-plus');
            $('ul.bbit-tree-node-ct .bbit-tree-elbow-end-plus').addClass('bbit-tree-elbow-end-minus');
            $('ul.bbit-tree-node-ct .bbit-tree-elbow-end-minus').removeClass('bbit-tree-elbow-end-plus')
            if ($("#preview_root").hasClass("bbit-tree-node-collapsed")) {
                $('#preview_root').removeClass('bbit-tree-node-collapsed');
                $('#preview_root').addClass('bbit-tree-node-expanded');
                $('ul.bbit-tree-root .bbit-tree-elbow-end-plus').addClass('bbit-tree-elbow-end-minus');
                $('ul.bbit-tree-root .bbit-tree-elbow-end-minus').removeClass('bbit-tree-elbow-end-plus')
                $('.bbit-tree-node-ct').show();
      开发者_Python百科      }
            $(".bbit-tree-node-ct ul").show();
        });
        $('#collapse').click(function() {
            $('.bbit-tree-elbow-minus').addClass('bbit-tree-elbow-plus');
            $('.bbit-tree-elbow-plus').removeClass('bbit-tree-elbow-minus');
            $('ul.bbit-tree-node-ct .bbit-tree-elbow-end-minus').addClass('bbit-tree-elbow-end-plus');
            $('ul.bbit-tree-node-ct .bbit-tree-elbow-end-plus').removeClass('bbit-tree-elbow-end-minus')
            $(".bbit-tree-node-ct ul").hide('slow');
        });


You can use .toggleClass instead of addClass removeClass and put your class names in as arguments of the function.

Toggle Class


Yes, use toggleClass as TALLBOY mentioned. Also, consider putting your $('.class') calls into a variable. For example:

var plus = $('.bbit-tree-elbow-plus');

from then on, use it like:

plus.toggleClass('bbit-tree-elbow-minus');
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜