请问关于js的onclick事件

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

阅读 3.8k
7 个回答

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

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

是的,使用全局数组

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

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

思路大抵如此

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

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

});

<!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>
var imgArr = ['imgurl-01','imgurl-02','imgurl-03'];
$('element').click(function(){
    var index = Math.round(Math.random()*2);
    $('img').attr('src',imgArr[index]);
})

我只是举一个例子。

//e是那个元素
e.onclick=()=>{
    const arr=[imgsrc1,imgsrc2,imgsrcn......];//imgsrc是图片URL
       let j=0;
      window.open(arr[j]);//在新窗口打开
         
if(j=arr.lenth){
  j=0;//如果等于数组长度,从第一张开始
}else{j++//否则递增
};
}
   

希望可以帮到你

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题