1

私は bxSlider を使用して、いくつかの質問に基づいてセットのスライドをスライドさせています。次のアクションをトリガーするためにラジオ ボタンを使用しています。

div's問題は、ラジオ ボタンが2 番目のスライド以降を切り替えないことです。最初のスライドでは問題なく動作します。

問題を説明するために jsFiddle を作成しました - jsFiddle Demo。最初の質問で [はい] を選択すると、応答テキストが表示されます。2番目などはしません...

どんな助けでも大歓迎です。

以下のコード...

HTML

<div class="slider">
    <ul id="sample">
        <li>
            <div class="questions">
                Question 1<br />
                <p>
                    <label><input type="radio" name="q1" class="noAction" />No</label>
                    <label><input type="radio" name="q1" class="yesAction" />Yes</label>
                </p>
            </div>
            <div class="actions">
                <div id="noAction" style="display: none;">
                    <p>Thank you.</p>
                </div>
                <div id="yesAction" style="display: none;"><a href="" id="go-next1">Go to Question 2</a></div>
            </div>
        </li>
        <li>
            <div class="questions">
                Question 2<br />
                <p>
                    <label><input type="radio" name="q2" class="noAction1" />No</label>
                    <label><input type="radio" name="q2" class="yesAction1" />Yes</label>
                </p>
            </div>
            <div class="actions">
                <div id="noAction1" style="display: none;">
                    <p>Thank you.</p>
                </div>
                <div id="yesAction1" style="display: none;"><a href="" id="go-next2">Go to Question 3</a></div>
            </div>
        </li>        
    </ul>
</div>​

jQuery

    $(function() {
        var slider = $('#sample').bxSlider({
          infiniteLoop: false,
          controls: false
        });

        $('#go-next1').click(function(){
          slider.goToNextSlide();
          return false;
        });

        $('#go-next2').click(function(){
          slider.goToNextSlide();
          return false;
        });

        $(':radio').change(function() {
          var item = '#' + $(this).attr('class');
          $(item).toggle();
        });

    });​

ありがとうございました。

4

1 に答える 1

1

非常に奇妙です...問題は最後のスライドで発生します。div class="actions" を ul タグの外に移動するだけの回避策が見つかりました。

フォークされた jsFiddle デモの変更を参照してください

于 2012-07-20T06:08:55.770 に答える