javascript - 如何使用javascript显示div多步?

标签 javascript jquery html css

如何使用javascript显示多步div?

我想为

创建代码

第一次点击 CLICK HERE 会显示 one

第二次点击 CLICK HERE 会显示 two

第三次点击 CLICK HERE 将显示 three

第四次点击 CLICK HERE 将显示 four

第五次点击 CLICK HERE 将显示 five

http://jsfiddle.net/x53eh96o/

<style type="text/css">
    div{
    display: none;
}
  </style>
<div id="1">one</div>
<div id="2">two</div>
<div id="3">three</div>
<div id="4">four</div>
<div id="5">five</div>
<div onclick="myFunction()" style="display: block;">CLICK HERE</div>


<script>
function myFunction() {
    document.getElementById("1").style.display = "block";
}
</script>

我该怎么做?

谢谢

最佳答案

首先,最好在你的div中添加一个通用类,以便于选择。然后你应该按类名选择所有需要的 div,并通过它们中的每一个,设置需要的可见性。

http://jsfiddle.net/x53eh96o/7/

<div class="some_class" id="1">one</div>
<div class="some_class" id="2">two</div>
<div class="some_class" id="3">three</div>
<div class="some_class" id="4">four</div>
<div class="some_class" id="5">five</div>
<div onclick="myFunction()" style="display: block;">CLICK HERE</div>


<script>
    var i = 0;
    function myFunction() {
        var divs = document.getElementsByClassName("some_class");
        var divsLength = divs.length;
        for(var j = divsLength; j--;) {
            var div = divs[j];              
            div.style.display = (i == j ? "block" : "none"); 
        }          
        i++;
        if(i > divsLength) {
            i = 0; // for a cycle
        }

    }
</script>

更新

这里是 jquery 示例:http://jsfiddle.net/x53eh96o/8/

<div class="some_class" id="1">one</div>
<div class="some_class" id="2">two</div>
<div class="some_class" id="3">three</div>
<div class="some_class" id="4">four</div>
<div class="some_class" id="5">five</div>
<div onclick="myFunction()" style="display: block;">CLICK HERE</div>


<script>
    var i = 0;
    function myFunction() {
        var divs = $(".some_class");
        divs.hide().eq(i).css({display: 'block'});       
        i++;
        if(i > divs.length) {
            i = 0;
        }
    }
</script>

关于javascript - 如何使用javascript显示div多步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32005090/

相关文章:

javascript - 在 "Loading..."中使用 preload() 时,页面卡在 "p5.js"

javascript - 如何删除图例饼图 amchart 中的标题?

html - CSS 主体和标题问题

javascript - 将两个变量相除返回 NaN

javascript - 使用 Ajax 时,变量应该如何从 JavaScript 传递到 PHP?

jquery - 响应式裁剪图像,保持图像中心可见(水平)

javascript - 如何使用 jquery 编写 nightwatch 自定义命令

html - { 乌尔都语博客文章文本对齐(从右到左); }

jQuery Select2 样式更新更改 CSS 类样式

javascript - 使用设备摄像头在 reactjs 中捕获图像