首页 > 请问关于js的onclick事件

请问关于js的onclick事件

请问使用js如何实现,点击屏幕同一个部位,每次点击出现的效果都不一样,比如第一次点击出现一张图片,第二次点击出现另一个图片


var imgArr = ['imgurl-01','imgurl-02','imgurl-03'];
$('element').click(function(){
    var index = Math.round(Math.random()*2);
    $('img').attr('src',imgArr[index]);
})

我只是举一个例子。


var n = 0;
$('element').on('click',function(){

$('.image'+n).show().siblings().hide();
n = n+1;

});


是的,使用全局数组

// 存放位置对应的计数
position_map = [];

// 获取位置计数
$position_count = position_map['位置信息']
$position_count ?: 0;
// 位置判断
position_map['位置信息', $position_count+1]

思路大抵如此


你可以弄一个计数变量进行判断


使用闭包记录要显示的顺序以及当前显示的index或者其他什么
也可以把当前显示的index或者其他什么存储在一个隐藏dom节点里


<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
    <title></title>
    <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){

                var arr=["http://img.sootuu.com/vector/200801/072/0556.jpg",
                        'http://img.sootuu.com/vector/2006-4/2006420113254343.jpg',
                        'http://img.sootuu.com/vector/2006-4/2006420105427584.jpg']
            // 随机形式
            // $(".demo").click(function(){
            //     var index = Math.floor((Math.random()*arr.length));
            //     $(".show img").attr("src",arr[index]);
            // })

            //按顺序
            var i=0;
            $(".demo").click(function(){
                if(i>=arr.length){
                    i=0;
                }
                $(".show img").attr("src",arr[i]);
                i=i+1;
                console.log(i);
            })
        })
    </script>
    <style type="text/css">
    </style>
</head>
<body>
    <a class="demo" href="javascript:void(0)">点击更换图片</a>
    <div class="show">
        <img src="">
    </div>
</body>
</html>
【热门文章】
【热门文章】