1

カルーセルプラグインがあります。ワンクリックでアクティブなクラスを持つ要素が1つあります。また、カルーセルのすべての要素にはクラスavailableまたはがありno_availableます。activeここで、この要素をチェックする必要があります。クラスavailableがある場合は何かを実行し、クラスがある場合は別のことをno_available実行します。このアクティブなクラスと要素は、カルーセルクリック後に変更されます。だから私はこれをします、そして私はただ一つの条件、最初のものだけを応答させます。手伝ってもらえますか?

carousel_images = $("#ajax-carousel"),
carousel_images_active_element = carousel_images.find("li.active");

carousel_controls_button.live('click', function(e){
    if (carousel_images_active_element.is('.available')){
        console.log('run_01');
        bottom_panel.fadeOut('fast');
    }
    else if (carousel_images_active_element.is('.no_available')){
        console.log('run_02');
    }
});

html

<ul>
   <li id="01" class="active no_available"></li>
   <li id="02" class="available"></li>
   <li id="03" class="available"></li>
   <li id="04" class="no_available"></li>
</ul>

多くのthx。

4

2 に答える 2

1

次に、このアクティブな要素を確認する必要があります。クラスが使用可能な場合は何かを実行し、no_availableの場合は別のことを実行します。

hasClass()を使用する

これを試して

carousel_controls_button.on('click', function(e){
   if (carousel_images_active_element.hasClass('available')){
     console.log('run_01');
     bottom_panel.fadeOut('fast');
   }
   else if (carousel_images_active_element.hasClass('no_available')){
    console.log('run_02');
 }
});

live()非推奨の使用on()

于 2013-01-25T10:26:43.487 に答える
0

指定された要素が指定されたクラスを持っているかどうかを通知するjqueryのhasClass()関数を使用してください。

たとえば、次のdiv要素のクラスが「active」であることを知りたい場合は、次のように使用してください。

<div id="target-ele" class="class1 class2 active"></div>

$('target-ele')。hasClass('active'); //クラスが「アクティブ」であるため、これはtrueを返します

<div id="target-ele" class="class1 class2 in-active"></div>

$('target-ele')。hasClass('active'); //クラス「アクティブ」がないため、これはfalseを返します

したがって、最後にif($('target-ele')。hasClass('active'))は、アクティブなクラスがある場合に機能を実行します。それ以外の場合は、アクティブなクラスがない場合に機能を実行します。

これがあなたの要件に対応することを願っています:)

于 2013-01-25T10:34:40.670 に答える