1

望ましい状況:すべてのクイズコンテンツは最初から非表示になっており、一度に1つのクイズの質問(ラジオボタンの選択肢とdivの応答を含む)を表示することになっている「クイズの質問のナビゲーション」として、liのアイテムを含むULリストがあります「質問ナビ」をクリックすると、

現状:同じ属性名「qns1」をチェックする配列を考えていたのですが、JavaScriptの構文に詳しくありません

Javascript

$(".span9").hide();

HTML

<ul class="quiznav">
     <li>Q1</li><br>
     <li>Q2</li><br>
     <li>Q3</li><br>
</ul>

<div class="span9">

        <div class="qnstitle" name="qns1">Q1. Lorem ipsum dolor sit amet</div>
        <label class="radio">
            <input name="qns1" class="radioBtn" type="radio" value="A">a) asdf
        </label>
        <div class="resp" data-qns="qns1">
            <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris aliquet ligula mi. Aenean eu magna quam. In ultrices nisi non tellus molestie ut mattis turpis convallis. </p>
        </div>

        <label class="radio">
            <input name="qns1" class="radioBtn" type="radio" value="B">b) bsdf
        </label>
        <div class="resp" data-qns="qns1">
            <p>Proin porta, ante eu feugiat facilisis, nulla erat porta dui, sed pellentesque orci sapien quis libero. Nam nec nibh metus, nec luctus massa.</p>
        </div>

        <label class="radio">
            <input name="qns1" class="radioBtn" type="radio" value="C">c) csdf
        </label>
        <div class="resp" data-qns="qns1">
            <p>Donec metus nibh, pharetra vitae semper id, blandit non lorem. Fusce ut metus a dui egestas congue quis quis augue. Suspendisse sed nunc sed nulla volutpat pharetra at vel purus.</p>
        </div>

        <br>

        <div class="qnstitle" name="qns2">Q2. Nunc sed aliquet enim.</div>
        <label class="radio">
            <input name="qns2" class="radioBtn" type="radio" value="A">a) azzzddsaf
        </label>
        <div class="resp" data-qns="qns2">
            <p>Donec metus nibh, pharetra vitae semper id, blandit non lorem.</p>
        </div>

        <label class="radio">
            <input name="qns2" class="radioBtn" type="radio" value="B">b) bzzzzddafdsf
        </label>
        <div class="resp" data-qns="qns2">
            <p>Aenean eu metus id dui tristique aliquam. Pellentesque non scelerisque nisi. Integer a nibh orci</p>
        </div>

        <label class="radio">
            <input name="qns2" class="radioBtn" type="radio" value="C">c) czzdfasdf
        </label>
        <div class="resp" data-qns="qns2">
            <p>Pellentesque turpis libero, consectetur nec dictum eu, accumsan a sapien. Integer eget ultrices risus. Pellentesque vel orci purus.</p>
        </div>

<div class="qnstitle" name="qns3">Q3. Nunc sed aliquet enim.</div>
        <label class="radio">
            <input name="qns3" class="radioBtn" type="radio" value="A">a) azzzddsaf
        </label>
        <div class="resp" data-qns="qns3">
            <p>Donec metus nibh, pharetra vitae semper id, blandit non lorem.</p>
        </div>

        <label class="radio">
            <input name="qns3" class="radioBtn" type="radio" value="B">b) bzzzzddafdsf
        </label>
        <div class="resp" data-qns="qns3">
            <p>Aenean eu metus id dui tristique aliquam. Pellentesque non scelerisque nisi. Integer a nibh orci</p>
        </div>

        <label class="radio">
            <input name="qns3" class="radioBtn" type="radio" value="C">c) czzdfasdf
        </label>
        <div class="resp" data-qns="qns3">
            <p>Pellentesque turpis libero, consectetur nec dictum eu, accumsan a sapien. Integer eget ultrices risus. Pellentesque vel orci purus.</p>
        </div>
    </div><!-- end of span9 -->
4

2 に答える 2

4

はい、各質問を adivで囲む必要があります。これは、ナビゲーションのクリックイベントに基づいて、現在の質問からフェードアウトし、新しい質問にフェードインする、探している効果である可能性があります。API.delay()は、質問の移行を容易にするために使用されました。

$(".btn").click(function(){    
    $('.qns').fadeOut();
    $('#qns' + $(this).html()).delay(450).fadeIn(); 
});

ここで例を参照してください

于 2012-12-07T11:49:37.043 に答える
1

最初に各質問をラップする必要があります。div次に、jQuerytoggle()を使用して、質問ナビゲーションのクリックイベントに基づいて質問を表示および非表示にできます。

$(".btn").click(function(){
    $("#" + $(this).text()).toggle("fast");
});​

こちらの例を参照してくださいFIDDLE

于 2012-12-07T10:37:19.373 に答える