iphone上click事件不触发的问题解决. //在ID为jsProvince上有这么一个事件: $('body').on('click', '#jsProvince', function(e){ $(this).next('.province-list').removeClass('hide'); }); 但是在iphone上点击就是没反应,无法出发绑定的点击事件. 但是在android上测试是没问题的. 找了半天终于找到了解决办法: 只需要给ID为jsProvince的元素添加一个如下的c…
***************************2015-10-29 21:07************************* 问题如下: datagrid最后一列编辑中有如下a标签 { field: "编辑", title: "编辑", width: 100, align: "center", //value表示字段值,row表示当前行的值,index表示当前行的索引 formatter: function (value, row,…
移动端的click事件延迟触发的原理是什么?如何解决这个问题? 原理 :移动端屏幕双击会缩放页面 300ms延迟 会出现点透现象 在列表页面上创建一个弹出层,弹出层有个关闭的按钮,你点了这个按钮关闭弹出层后后,因为有300ms延迟,所以这个按钮正下方的内容也会执行点击事件(或打开链接).这个被定义为这是一个"点透"现象 解决方案 视口标签中禁止用户缩放 <meta name="viewport" content="width=device-width…
在jQquery中,可以用如下方式触发input.a标签的click事件: <input id="my_input" /> <a id="my_a" href="http://www.XXXX.html"></a> $("#my_input").click(function () { //do something }); 或 $("#my_a").click(functi…
当一个HTML元素需要添加mouseon.mouseout与click事件,或者mouserenter.mouseleave和click事件时,click事件无法触发 针对上述问题,我遇到的有两种情况: 情况一:已经存在的HTML元素绑定事件,可以使用下面这种绑定方式 $("button").mouseon(function(){ $("p").text("滑入"); }).click(function(){ $("p").t…
ie6下a标签click事件无法触发加载iframe,把a换成span或者别的,就可以了…
转自:http://www.iam3y.com/html/560.html 最近在做一个项目的时候,遇到动态加载微博内容,然后点击“展开评论”后获取该微博的所有评论.这里使用了动态加载的<span mid=’123456789′ class=’get_comment’>点击加载评论</span>. 然后再写 $(“.get_comment).click(function(){ //响应事件逻辑 }) ,发现click事件并不会触发,使用控制台侦听也木有错误.百思不得其解时,将焦点落…
切换到移动模拟模式,并点击按钮,查看控制台. 发现click没有事件没有触发,而touch事件依然触发. 解决办法: 对于移动端我们使用css来禁止按钮,达到disable的效果: 对,就是这个神奇的pointer-events属性!回忆一下,很早前就看到过这个属性,不过当时并没有进入到移动端的开发领域,对它的作用并没有过多关注.我们来看一下mdn上怎么说的: auto 是默认值. 设置pointer-events:none的元素,将不会成为事件目标.但是如果其子孙元素设置了pointer-ev…
今天帮群里的朋友看一段代码的时候偶然间遇到一个label的坑,点击label的时候,监听的click事件被执行两次: 具体代码如下: <div id="test"> <input type="checkbox" name="abc" id="abc"/> <label for="abc">3423432432432432</label> </div>…
首先我们看下面的代码片段(label包裹checkbox) <div class="example"><label for="chk_6" class="label-1">选项6<input class="chkbox-1" type="checkbox" id="chk_6" value="1"></label><…
1 为什么会发生延迟300毫秒的问题 移动设备上的浏览器默认会在用户点击屏幕大约延迟300毫秒后才会触发点击事件,这是为了检查用户是否在做双击.为了能够立即响应用户的点击事件,才有了FastClick.这个问题在较新的安卓机上已经没有了,但是在ios一样恶心的存在.为什么不用touchend?举个一个例子 当存在一个滑动列表,而列表中的元素又可以点击的时候,你就知道有多爽了. 言归正传,其实fastclick的使用很简单,都是创建fastclick实列后,将其包裹目标dom.然后目标dom及do…
描述:用一个div写一个按钮,并给这个按钮添加一个点击事件,在安卓机器上一切正常,但是在苹果机型上会出现点击事件失效. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .redButton{ width: 50px; height: 50px; ba…
今天遇到一个诡异的问题.button 上的点击事件触发不了. 找个几个小时,原因是 js 报错了. <Button type="primary" htmlType="submit" onClick={this.handleDraft} style={hidden}>存为草稿</Button> <Button type="primary" htmlType="submit" onClick={thi…
[注意] 事件要追加在触发弹出事件的点击事件里面 $('#feedback').click(function(){ layer.open({ content:'<div><div class="feedback-title"><div class="btn-close"><img src="/style/newreport3/img/close.svg"></div><div cl…
写了一个下拉菜单,在单击空白地方的时候隐藏. 第一时间就是用$(document).click(function(){   //隐藏代码  }); 各大浏览器都没问题,唯独iPhone上的不会触发事件. 后来排查了一遍原因发现,Safari中是这样处理事件冒泡的: 1.点击某个DIV或其他元素. 2.发现没有处理该事件,继续往上冒泡. 3.直到冒泡到body下面的子节点为止,还是没有人处理该事件的话,就把该事件丢弃掉.不再往上冒泡. 4.只要在这一条冒泡链当中,有一个节点处理了该事件,它就不会丢…
这要追溯至 2007 年初.苹果公司在发布首款 iPhone 前夕,遇到一个问题 —— 当时的网站都是为大屏幕设备所设计的.于是苹果的工程师们做了一些约定,应对 iPhone 这种小屏幕浏览桌面端站点的问题.这当中最出名的,当属双击缩放(double tap to zoom).这也是会有上述 300 毫秒延迟的主要原因. 当用户一次点击屏幕之后,浏览器并不能立刻判断用户是要进行双击缩放,还是想要进行单击操作.因此,iOS Safari 就等待 300 毫秒,以判断用户是否再次点击了屏幕. 于是,…
原文:http://www.bubuko.com/infodetail-822565.html 这要追溯至 2007 年初.苹果公司在发布首款 iPhone 前夕,遇到一个问题 —— 当时的网站都是为大屏幕设备所设计的.于是苹果的工程师们做了一些约定,应对 iPhone 这种小屏幕浏览桌面端站点的问题.这当中最出名的,当属双击缩放(double tap to zoom).这也是会有上述 300 毫秒延迟的主要原因. 当用户一次点击屏幕之后,浏览器并不能立刻判断用户是要进行双击缩放,还是想要进行单…
闪烁问题 由于在iOS Safari上click事件存在300ms响应延时,所以为touch事件添加样式,会和click事件默认样式叠加而产生闪烁问题. 因为ios safari浏览器中对触摸事件的响应顺序是: ontouchstart -> ontouchmove -> ontouchend -> (300ms) onclick 快速解决问题的方法: 消除click默认样式 通过讲click事件样式的alpha通道设置为0(透明),消除click事件的闪烁效果 -webkit-tap-…
一.场景描述: 1.A/B两个层上下z轴重叠. 2.上层的A点击后消失或移开.(这一点很重要) 3.B元素本身有默认click事件(如a标签) 或 B绑定了click事件. 在以上情况下,点击A/B重叠的部分,就会出现点透的现象. 二.点透现象的分析 在移动端不使用click而用touch事件代替触摸是因为click事件有着300ms的延迟,事件触发的顺序: touchstart--touchmove--touchend--click touchstart:在这个DOM(或冒泡到这个DOM)上手…
这两天自己在写一个手机网页,用到了触屏滑动的特效,就是往右滑动的时候左侧隐藏的菜单从左边划出来. 做完之后在手机原生浏览器中运行正常,但在QQ和微信中打开,发现touchmove只会触发一次,而且touchend也经常不触发. 之后百度了一下这个问题,原因是 主要是由于200ms超时导致内核不一定会一直处理touchmove事件,一旦超时会将后续所有的事件转交给UI处理,导致touchmove不会一直触发. 为了解决开发者需要,建议开发者在touchstart时调用event.preventDe…
一.tap与click的区别 两者都会在点击时系统自动触发,但是在手机WEB端,click会有 200~300 ms.延迟来自判断双击和长按,因为只有默认等待时间结束以确定没有后续动作发生时,才会触发click事件.所以触摸事件反应更快,体验更好.singleTap和doubleTap 分别代表单次点击和双次点击.tap封装了touchstart.touchmove.touchend三个事件的处理(touchstart之后如果有产生touchmove则取消此次tap事件的产生) click则只是…
clike事件和 Zepto.js 中tap的区别 首先介绍下Zepto: 最初是作为移动端开发的库,但是却可以作为JQuery轻量级的替代品,因为API和JQuery相似,而文件更小. 介绍下tap和click的区别: 两者都会在点击时触发,但是在web手机端,clikc会有200-300ms的延时,所以要用tap代替click作为点击事件,singleTap和doubleTap分别作为单次点击和双击,但是使用tap会带来点透事件(事件穿透). 介绍下什么是tap事件穿透: 执行完上层绑定的t…
最近在公司项目中使用vue2.0做开发,在使用checkbox时遇到了一些问题,首先我们先了解一下需求. 如上如所示,在上方复选框被点击时,更改下方p标签的文本内容为:复选框已被选中.并将p标签文字颜色改为红色. 面对如此简单的需求我第一个想到的就是通过点击事件判断复选框状态,更改文本及css样式,代码如下: <template> <div id="secert-main"> <label for="label" @click.stop…
和app进行混合开发的时候,一个页面使用h5写的,按钮上绑定click事件会触发下面图片上的a链接导致跳转,页面如图 顶部是一个banner,分vr.视频.图片三部分,红框处的三个nav按钮绑定click事件使banner滚动到响应的部分,banner上有a链接用以跳转详情,nav按钮上绑定事件如下: $(document).on("click","#banner-navBox .nav-btn",function(e){ ... }); 但是点击nav按钮的时候看…
easy知识点, a标签的click事件和href共存会在执行click事件后触发href里面的链接,如果把href设为空字符串:href="",则会使用当前页面的url作为跳转链接. 解决方法很简单: 1. 删除A标签的href属性.但是这样会出现一个问题,在点击A标签的时候,页面的焦点会定位到页面的top处. 2. href="javascript: void(0);". 3. click事件使用return false;即可.…
原文:在asp.net页面上按回车会触发Imagebutton控件的Click事件 问题: 用asp.net做的aspx页面,无论是否有文本框.下拉框.复选框……获得焦点,只要在当前页面上按一下回车就会触发该页面上的第一个Imagebutton控件的Click事件. 原因: 在form表单内部如果出现了input type="image"或者input type="submit"这些控件,都会自动接收表单上的回车事件 方案: 在页面上放2个imagebutton,第…
在Iphone上,新生成的DOM元素不支持$(document).click的绑定方法,该怎么办呢? 百度了N久都没找到解决办法,在快要走投无路之时,试了试Google,我去,还真找到了,歪国人就是牛逼,原帖地址:http://stackoverflow.com/questions/3705937/document-click-not-working-correctly-on-iphone-jquery 大概意思是,如果要用$(document).click()来绑定新生成的DOM元素,必须给此…
场景: 在ios上(包括iPhone和ipad) 给window ,html,document,body绑定click事件,点击不会触发 由于ios浏览器都用的safari内核,所以ios浏览器全部中枪 解决方案: 改用touch事件(如果是弹出层的话,会有点透问题) 如何避免bug触发:不要委托到body结点上,委托到任意指定父元素都可以,或者使用原生具有该事件的元素,如使用click事件触发就用a标签包一层. 已触发如何修补:safari对事件的解析非常特殊,如果一个事件曾经被响应过,则会一…
今天做了个手机页面,点击某个按钮->弹出菜单,再点击菜单以外的任意位置->关闭菜单,在其他浏览器里面没有问题,但是在IOS浏览器中并不会关闭. 网上解决这个bug的帖子很多,这篇帖子主要是讲原理,这里写个简单的代码,大家可以复制到自己页面中去实验: <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=devi…
原生JS通过什么方法绑定click事件? 原生js有一下三种方法为DOM对象绑定click事件, 第一种,在html中添加 onclick属性,在此属性中添加要绑定的事件函数,如下, 这种方法为html处理事件的原始方法,使得html和js过分耦合, 即表现层代码 和 行为层代码耦合: <html> <head> <script src="./jquery.js"></script> </head> <body>…