IOS系统中点击失效

IOS系统中点击失效

问题

当委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托的元素是默认不可点击的(如 div, span 等),此时 click 事件会失效。

例如:

    //加载更多
    $(‘body‘).on(‘click‘,‘.showMoreData‘,function () {
    })

问题原因

React attaches event listeners to the document. iOS doesn‘t fire click events for nodes (at all) unless they seem "clickable"

Safari真的不希望你点击任何不是标签的东西。这是一个已知的问题:http : //stackoverflow.com/questions/5421659/html-label-command-doesnt-work-in-iphone-browser/6472181#6472181

大概意思就是ios不认为这个元素是可以点击的

解决办法

我使用的是最后一种方法。省去了对IOS系统的判断。

原文地址:https://www.cnblogs.com/cn-oldboy/p/12688999.html

时间: 2024-09-29 01:26:56

IOS系统中点击失效的相关文章

微信公众号弹出框在IOS最新系统中点击键盘上的“完成”导致事件无法触发问题

微信公众号弹出框在IOS最新系统中点击键盘上的"完成"导致事件无法触发问题 问题描述 微信公众号中有项功能是弹框模态框,输入信息后保存操作.但是在IOS系统中发现,当输入内容后,点击键盘上的"完成"后,再点击"提交"无反应:跳过"完成"直接点击"提交"就可以正常保存 问题原因 当键盘弹出后,会将body向上弹起:但是点击"完成"后并没有将body拉回,导致点击事件不在body内而无法触发

iOS Safari 中点击事件失效的解决办法

问题描述 当使用委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托的元素是默认不可点击的(如 div, span 等),此时 click 事件会失效. 可以使用下面的代码在 iOS 中进行测试. <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content=&qu

iOS UITableView中点击状态栏无法回滚到顶部

// When the user taps the status bar, the scroll view beneath the touch which is closest to the status bar will be scrolled to top, but only if its `scrollsToTop` property is YES, its delegate does not return NO from `shouldScrollViewScrollToTop`, an

[问题解决]vue &lt;router-link&gt;在浏览器上点击失效(路由不跳转)

问题引入 自己写的小demo中,引入mui.js并实现相关功能后,再点击底部的导航栏发现点击失效 如下所示,一个标准的路由使用,于chrome浏览器中点击失效,于IE和火狐上可以 <nav class="mui-bar mui-bar-tab"> <router-link to="/home" class="mui-tab-item"> <span class="mui-icon mui-icon-home

iOS中点击背景收键盘

这一次给大家带来的是ios中点击背景如何收键盘 直接上图: file:///Users/a504-18/Desktop/屏幕快照%202016-03-17%20下午7.35.07.png 先创建一个这样的页面,把两个文本框进行连线: file:///Users/a504-18/Desktop/屏幕快照%202016-03-17%20下午7.36.57.png 其实,很简单,视图控制器有一个view属性,是从UIViewController继承来的.这个view属性对应的nib文件中的View.使

ext 3.2 tree 在IE10中点击事件失效的bug

ext3.2 中的tree在IE中进行兼容性测试,遇到IE10时,无法点击,其他版本的IE(7.8.9.11)均正常.此bug是由于ext-all.js中的getAttributeNS方法不能兼容IE10出错引起的,下载了ext3.4,这里的getAttributeNS 被重写了,将3.4中的方法写入3.2中的ext-all.js文件中,IE10中tree恢复正常. 修改前: getAttributeNS: Ext.isIE ? function(s, q) { var t = this.dom

微信中点击链接扫二维码直接下载APP(整合IOS和安卓)

使用微信推广的用户经常都会遇到推广链接在微信中无法打开导致无法下载app的情况,此时用户在微信中打开会提示"请在浏览器中打开".这对于使用微信营销的商家来说就很不友好了且损失非常大,因为用户是不知道为什么要用浏览器打开,会有这个链接是否安全的疑问,所以就不知不觉地流失了或者选择其他平台了.那么针对这个问题到底要怎么解决呢,其实只需要一个微信跳转其他浏览器打开下载页的功能,可以同时整合安卓和苹果两个下载接口.集成好的接口会自动判断设备,自动唤醒外部浏览器,用户轻松实现微信跳转外部浏览器直

IOS系统下虚拟键盘遮挡文本框问题的解决

最近在项目中发现同样的代码在Android端微信网页中点击文本框唤出的虚拟键盘不会遮挡文本框,但是在IOS端的微信网页中点击文本框唤出的键盘却在大部分情况下会遮挡文本框 经过高人指点,这个问题终于解决了 下面说说解决办法: 主要代码 document.body.scrollTop = document.body.scrollHeight; 然后在文本框获取焦点的时候,可以定义一个计时器,一直执行上面的那句话 在文本框失去焦点的时候,就把之前的计时器清除掉即可 js写法: let interval

IDEA Run/Debug Configurations 中点击“+”号没有tomcat server选项

1.环境: 版本:IntelliJ IDEA 2017.2.1系统:windows7 32位 / ubuntu上通用 2.问题: 在IDEA中,对每一个web项目都要配置tomcat服务器,如果你是第一次使用该软件,可能在 Run/Debug Configurations中点击"+"号找不到tomcat server选项,造成这种情况的原因是在软件设置中没有将tomcat的插件开启.所以只需要在setting里找到tomcat server然后开启就行了.问题截图如下: 3.解决方法: