求教关于js连续点击事件但最终只触发一次应该怎么写

JavaScript018

求教关于js连续点击事件但最终只触发一次应该怎么写,第1张

在点击事件中设置一个变量。如果发生了点击就改变这个变量。例子

var hit = false

document.body.onclick = function() {

    if( !hit ) {

        hit = true

        alert( "hit" )

    }

}

1.防止重复点击可以添加标记,第一次点击后变为false,每次点击判断这个标记是true才执行 2.如果是按钮防止重复点击,可以再按钮点击后,给按钮添加disabled属性,按钮就再也点击不了 举个例子: Document方式一方式二 //第一种方式 var flag = true

测试时,使用苹果手机的点击事件会慢300ms,并且连续点击评论框底部会出现多余空白。评论框应该固定在底部的。

为什么会延迟300ms,谷歌是这样说的:在移动浏览器中,当你点击按钮的单击事件时,将会等待大约300ms的时间。这是因为,浏览器是等着看,如果你是真正执行双击。

Android 设备上的 google浏览器 (Chrome) 32+ 版本,在meta头信息中设置  width=device-width  没有300毫秒的延时,所以也无需使用本插件。

出现底部留白是由于延迟又多次点击出现的,只需要解决延迟问题,防止多次点击即可。

在页面中引入https://cdn.bootcss.com/fastclick/1.0.6/fastclick.min.js,再加入FastClick.attach(document.body)即可解决。完美!