javascript - 如何使用jquery创建一个 "navigation"在同一页面隐藏和显示内容?

标签 javascript jquery list

期望的情况:所有测验内容从一开始就被隐藏,我有一个包含 li 项目的 ul 列表作为我的“测验问题导航”,它应该显示单击“问题导航”时的 1 个测验问题(带有 radio btns 选项和 div resp)。

目前的情况:我想有一个数组来检查相同的 attr 名称“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 -->

最佳答案

是的,将每个问题包装在 div 中是必要的。这可能是你正在寻找的效果,根据导航的点击事件淡出当前并淡出新问题。 API .delay() 用于简化问题的转换。

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

请参阅此处的示例 JSFIDDLE

关于javascript - 如何使用jquery创建一个 "navigation"在同一页面隐藏和显示内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13761205/

相关文章:

java - 在jsp中通过java访问javascript

javascript - jquery 和 html5 中的全屏视频轮播

python - 获取具有不同子列表数据类型的列表元素的交集

javascript - 一段代码阻止另一段代码工作

javascript - jQuery 树形菜单 - 父类别未显示

php - 未捕获的异常 : jQuery UI Tabs: Mismatching fragment identifier

javascript - 如果选中复选框,则显示 Bootstrap 模式

python - 如何在 Python 列表的开头插入一个元素?

python - 如何检查python中是否存在列表?

javascript - 如何在多选下拉列表中应用复选框