单击时的 Javascript 不适用于 setInterval

标签 javascript jquery html onclick

我有以下代码-

 <html>
<head>
<title>Rebound</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">


    function ShowRandom() {
        var $span = $(".random");
        var oldTop = 0;
        var oldLeft = 0;
        var leftPos = 10;
        var topPos = 10;
        var flag = true;

        $(".random").on("click", "#lion", function(event) {
                alert(event.target.id);
            }); 

        $span.fadeOut(500, function() {

            var maxLeft = $(window).width() - $span.width();
            var maxTop = $(window).height() - $span.height();

            oldTop = topPos;
            oldLeft = leftPos;

            leftPos = Math.floor(Math.random() * (maxLeft + 1));
            topPos = Math.floor(Math.random() * (maxTop + 1));          

            $span.css({ left: leftPos, top: topPos }).fadeIn(500);
        });
    };
    ShowRandom();
    setInterval(function(){         
        $('.random').append("<span class='lab'></span>");
        ShowRandom(); 
    }, 1500);
     $('.random').delegate('.lab', 'click', function() {
        $('.random').remove('.lab');
        alert('single event trigger');
    });


</script>
<style>
    span { 
        display: inline-block; 
        position: absolute;
    }
</style>
</head>
<body>
    <div id="container">
        <span class="random"><img src="lion.jpg" width="50px" height="50px" id="lion"></span>

    </div>
</body>
 </html>

当我单击图像时,我只需要一个警报框。但我收到多个警报框。有办法解决吗?

谢谢

最佳答案

因为你一直在每个时间间隔连接点击事件。

每次在内部添加另一个事件时,它不会覆盖前一个事件。

关于单击时的 Javascript 不适用于 setInterval,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11853206/

相关文章:

javascript - 如何使用 jquery 或 javascript 导航到另一个文件?

javascript - 如何在 iframe 中使用 getSelection

javascript - iOS html 应用程序 : big scrolling list causes elements to disappear

javascript - 如何在不留空格的情况下在同一行打印字符串?

jQuery,如何在 .load() 之后重新绑定(bind) html 元素

javascript - 全屏视频介绍 HTML5?

javascript - 计算地理位置时无法设置外部(全局?)变量

javascript - 从 jquery 进行 Ajax 调用后,php $POST[] 为空

javascript - Jquery头标签问题

html - CSS 问题,位置 : absolute