javascript 在移动端鼠标事件点透问题

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        #box{
            position: absolute;
            left:0;
            top:0;
            width:200px;
            height:200px;
            background:red;
            opacity:.2;
        }
    </style>
</head>
<body>
    <a href="https://www.baidu.com">百度</a>
    <div id="box"></div>
    <script>
        {
        /*
          touchstart 手指在元素上摁下
          touchmove 手指在元素摁下之后,在屏幕中移动
          touchend  手指在元素摁下之后,然后抬起

        */
           let box=document.querySelector("#box");
            box.addEventListener("touchend",()=>{

                box.style.display="none";
                e.preventDefault();
            });
        /*
            移动端中,到底支不支持鼠标事件?

            移动端鼠标事件问题:300ms左右的延迟
            当我们在移动端手指触碰元素之后,会立即执行我们的touch事件,然后会记录当前触发事件的坐标
            300毫秒之后,在该坐标查找元素,如果该元素有对应的鼠标事件,就执行   

            事件点透解决方案:
            1.在移动端 不要使用鼠标事件 (包括a的href)
            2.阻止默认事件
        */

        }
    </script>
</body>
</html>

原文地址:https://www.cnblogs.com/supermanGuo/p/11617256.html

时间: 2024-08-11 19:29:43

javascript 在移动端鼠标事件点透问题的相关文章

JavaScript进阶系列07,鼠标事件

鼠标事件有Keydown, Keyup, Keypress,但Keypress与Keydown和Keyup不同,如果按ctrl, shift, caps lock......等修饰键,不会触发Keypress事件,而会触发Keydown和Keyup事件,这就是Keypress事件与Keydown.Keyup事件的不同之处.另外,通常使用Keypress事件来获取用户输入信息. 继续使用"JavaScript进阶系列05,事件的执行时机, 使用addEventListener为元素同时注册多个事件

【javascript/css】关于鼠标事件onmousexxx和css伪类hover

在运用鼠标移入移出事件时,一般有两种做法,一种是DOM事件的"onmouseover"和"onmouseout",还有一种是css的伪类":hover". 在实际运用中如何选择,取决于清楚明白的了解他们之间的区别. HTML DOM 允许 JavaScript 对 HTML 事件作出反应. 在我们为元素绑定了一个事件,当事件发生的时候,可以执行一段javascript代码. 关于鼠标事件,总共有: onmouseover和onmouseout 鼠

移动端二三事【二】:移动端触摸事件点透及多种解决方案。

大家都知道的少说,多分享一些干货. 一.首先说移动端的三大主要事件: 1.手指按下: ontouchstart2.手指移动:ontouchmove3.手指抬起 ontouchend *使用移动端事件时,为尽可能地保证兼容性与调试时的友好性,尽可能用事件绑定的方式.例如: /* 注意: 在移动端开发的时候,浏览器的模拟器时好时坏,一般不用on的方式绑定事件函数,要用事件绑定的方式(addEventListener). */ //用以下方式浏览器的移动端模拟器可能会无法识别事件 var div =

贪吃蛇,JavaScript,效果,鼠标事件

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>鼠标跟随一串效果</title> <style type="text/css"> div{ width: 30px; height: 30px; background: #008000; position: absolute; left: 10px; top: 10p

JavaScript的事件对象_鼠标事件

鼠标事件是 Web 上面最常用的一类事件,毕竟鼠标还是最主要的定位设备.那么通过事件对象可以获取到鼠标按钮信息和屏幕坐标获取等. 一.鼠标按钮 只有在主鼠标按钮被单击时(常规一般是鼠标左键)才会触发 click 事件,因此检测按钮的信息并不是必要的. 但对于 mousedown 和 mouseup 事件来说,则在其 event 对象存在一个 button 属性,表示按下或释放按钮. <script type="text/javascript"> window.onload

javaScript事件(五)事件类型之鼠标事件

一.事件 二.事件流 以上内容见:javaScript事件(一)事件流 三.事件处理程序 四.IE事件处理程序 以上内容见javaScript事件(二)事件处理程序 五.事件对象 以上内容见javaScript事件(三)事件对象 六.事件对象的公共成员 以上内容见javaScript事件(四)event的公共成员 七.鼠标事件 DOM3级事件中定义了9个鼠标事件. mousedown:鼠标按钮被按下(左键或者右键)时触发.不能通过键盘触发. mouseup:鼠标按钮被释放弹起时触发.不能通过键盘

JavaScript的事件_事件处理函数概述与鼠标事件的处理函数

一.事件处理函数概述 JavaScript 可以处理的事件类型为:鼠标事件.键盘事件.HTML 事件. 所有的事件处理函数都会都有两个部分组成,on + 事件名称,例如 click 事件的事件处理函数就是:onclick. 对于每一个事件,它都有自己的触发范围和方式,如果超出了触发范围和方式,事件处理将失效. 二.鼠标事件:页面所有元素都可触发 1.click:当用户单击鼠标按钮或按下回车键时触发. <script type="text/javascript"> windo

javascript基础——鼠标事件,系统对话框等

1.鼠标事件 (1).onclick:用户点击鼠标左键,以及当焦点在一个按钮上时,用户按Enter键时,发生onclick事件 (2).ondblclick:用户双击鼠标左键时,发生ondblclick事件 (3).onmousedown:用户按下任意鼠标按钮的时候,发生onmousedown事件 (4).onmouseout:当光标在一个元素上,并且用户将其移出元素边界时,发生onmouseout事件 (5).onmouseover:当光标在一个元素之外,并且用户将移动到该元素上时,发生onm

JavaScript 鼠标事件

鼠标事件是Web开发中最常用的一类事件. DOM3级事件中定义了9个鼠标事件,分别如下: click.dbclick.mousedown.mouseenter.mouseleave.mousemove.mouseover.mouseout.mouseup. click:在用户单击鼠标按钮时,或者按下回车键时触发.这点对确保易访问性很重要,意味着onclick时间处理程序既可以通过键盘也可以通过鼠标执行.