0

BODY にナビゲーションと同じクラスを与えようとしています。クラス名が( 1、2、3)であるため、問題は.match(/tab[0-9]/ ) です。.match を別のものに置き換えるのを手伝ってもらえますか?

html

<ul id="menu">
    <li><a href="#one" class="one">one</a></li>
    <li><a href="#two" class="two">two</a></li>
    <li><a href="#three" class="three">three</a></li>
</ul>

jquery

 $('#menu li a').click(function(){
     $("a").removeClass("active");
     $(this).addClass("active");

$('body').removeClass("one two three").addClass("" + $(".active").attr("class").match(/tab[0-9]/));

$("#bodyClass").text($('body').prop("class"));
});


$('body').removeClass("one two three").addClass("" + $(".active").attr("class").match(/tab[0-9]/));
$("#bodyClass").text($('body').prop("class"));

http://jsfiddle.net/J3qWx/10/

4

2 に答える 2

0

これも好きです:

http://jsfiddle.net/J3qWx/12/

 $('#menu li a').click(function () {
     if ($(this).is('.active')) return;
     $('body').removeClass().addClass(this.className);
     $(this).closest('ul').find('.active').removeClass('active').end().addClass('active');
     $('#bodyClass').text($('body').attr('class'));
 });
于 2013-06-25T09:55:50.647 に答える