我遇到了Safari for iPad上的一个令人愤怒的错误,我无法修复.

建筑:

>骨干0.9.9

> jquery 1.7.2

> jquery mobile 1.3.1

用户代理:

> iOS 5.1.1(iPad)

> Safari 5.1手机

>完整的用户代理字符串:Mozilla / 5.0(iPad; CUP OS 5_1_1,如Mac OS X)AppleWebKit / 534.46(KHTML,如Gecko)版本/ 5.1 Mobile / 9B206 Safari / 7534.48.3

我有一个相同View的10个实例,每个实例都有一个包含textarea元素的嵌套视图.出于某种原因,当您点击textarea时,它会随机聚焦.我已经读过当你试图触发不是来自点击/点击事件的焦点事件时,Safari手机很不稳定,但这是一个直接点击,它仍然无法可靠地聚焦.这是视图的精简代码:

var ParentView = Backbone.View.extend({

render: function() {

this.$el.html("

this.textareaView = new TextareaView({

el: this.$el.find('.textarea-container')

});

this.textareaView.render();

}

};

var TextareaView = Backbone.View.extend({

events: {

'tap .my-textarea': 'handleTextareaTap'

},render: function() {

this.$el.html('');

},handleTextareaTap: function(event) {

console.log('TAPPED');

}

};

var i = 0;

while ( i < 10 ) {

var view = new ParentView();

view.render();

$(body).append(view.$el);

i++;

}

点击事件处理程序会在100%的时间内触发.控制台每次都正确显示“TAPPED”.但大多数情况下,用户代理无法集中在textarea中.我在TextareaView中添加了以下行,以确切了解Safari正在触发的事件以及以何种顺序:

var TextareaView = Backbone.View.extend({

render: function() {

this.$el.html('');

this.$el.find('.my-textarea').on('blur change click contextmenu copy cut dblclick focus focusin focusout hashchange keydown keypress keyup load mousedown mouseenter mouseleave mousemove mouSEOut mouSEOver mouseup mousewheel paste reset scroll select submit textinput unload wheel tap touch scrollstart scrollstop swipe swipeleft swiperight vclick vmousecancel vmousedown vmousemove vmouSEOut vmouSEOver vmouseup touchstart touchend touchmove touchcancel',function(event) {

console.log(event.type);

}

},};

这是textarea正确聚焦时获得的事件顺序:touchstart,vmouSEOver,vmousedown,touchend,vmouseup,vclick,tap,vmouSEOut,mousemove,mousedown,focusin,focus,mouseup,click,focusout,blur

这是textarea无法聚焦的事件顺序:touchstart,mousemove

由于某些原因,mousemove之后的事件无法触发.我也试过手动触发这些事件,但是textarea元素仍然没有聚焦,也没有键盘弹出,例如:

var TextareaView = Backbone.View.extend({

handleTextareaTap: function(event) {

// This still doesn't work:

this.$el.find('.my-textarea').trigger('focus');

// Neither does waiting for the synthesized WebKit events to fire:

var _this = this;

setTimeout(function(){

_this.$el.find('.my-textarea').trigger('focus');

},1000);

}

};

我已经倒了Apple’s event handler documentation无济于事,我在github的任何一个回购中都找不到与此有关的任何错误报告.

另外两个我不理解的怪异行为:

> textarea的第一个实例始终正常工作

>尽管有一个模糊事件被调用,但textarea仍然聚焦

任何见解将不胜感激.

干杯,

iostextarea获取焦点_jquery – 在iOS上的Safari中针对textarea触发的不一致事件相关推荐

  1. 在iPhone和iPad上的Safari中使用语音屏幕

    语音屏幕已经在iOS和iPadOS设备上提供了相当长的一段时间,如何在iPhone和iPad上的Safari中使用语音屏幕呢?您的设备不需要安装在最新版本的操作系统上.启用此功能是一个非常简单的过程. ...

  2. 怎样在Mac上的Safari中观看YouTube画中画?

    专用的画中画(PiP)按钮使在Mac上可移动的浮动窗口中轻松播放视频.毫不奇怪,YouTube播放器不支持此功能.幸运的是,有一种隐藏的方式可以在Mac上的Safari中观看YouTube画中画.需要 ...

  3. 在 Mac 上的 Safari 中下载时遇到问题?故障排除和修复的方法

    在 Mac 上的 Safari 中下载时遇到问题?小编将告诉大家解决 Safari 下载丢失.卡住和丢失的方法. 一.检查您的默认下载文件夹 Safari 浏览器会将您下载的每个文件发送到 Mac 上 ...

  4. vba 定义类_在类中定义和触发自己的事件(上)

    大家好,我们今天继续讲解类的相关知识.在上一讲中我们讲了使用WithEvents定义响应事件的对象,那么有了对象自然要跟进到事件了,这讲就给大家讲解两个新技能--在类中定义和触发自己的事件(Event ...

  5. ios html5不显示图片,为什么iOS上的Safari不显示我的HTML5视频海报?

    我有这个网页: http://healthpad.net/dashboard/ 它具有10< video>元素就可以了. 由于某些原因,当我在iPad上加载页面时,它不显示视频海报. 尝试 ...

  6. ipad safari php readfile mp4,php – 在mac上的safari中没有加载Wav文件

    我正在尝试使用 PHP提供WAV文件,我希望它能够播放而不是下载.我正在设置这样的标题: $path = "wav.wav"; header('Accept-Ranges: byt ...

  7. 如何在iPhone和iPad上的Safari中在网页上查找文本

    Sometimes it's tough to find specific information within a web page in Safari for iPhone or iPad. Lu ...

  8. 如何在iPhone,iPad或Mac上的Safari中启用收藏夹图标

    Safari 12 is here with a feature we've all been waiting for: favicons. Here's how to enable them on ...

  9. 如何在iPhone和iPad上的Safari中在后台打开链接

    Safari lets you open links in a new tab on iPhone or iPad, but it immediately switches to that new t ...

最新文章

  1. 如何优雅安全地在深层数据结构中取值
  2. python Day1作业:用户三次登陆锁定
  3. 深入cocos2d-x中的touch事件
  4. 天涯社区服务器位置,天涯到底怎么了,哪份帖子都打不开,是服务器的问题吗...
  5. C#使用Xamarin开发可移植移动应用进阶篇(10.综合演练,来一份增删改查CRUD)
  6. java 信息增益_对信息增益(IG,Information Gain)的理解和计算
  7. luoguP4551最长异或路径
  8. MySql 踩坑小记 1
  9. C# 子类实例化基类 基类使用不了子类的方法_C#高级编程面试考题
  10. mysql 当前时区_如何获取MySQL的当前时区?
  11. HDU 3996 Gold Mine【最大闭合权图】
  12. 杨强教授新番!破解机器学习数据孤岛和数据保护难题
  13. 简单爬虫 爬取百度图片并批量重命名
  14. 记《浪潮之巅》-第一版-6.IT业的罗马帝国--微软,Microsoft
  15. 【QA单】柿饼派及柿饼M3模块相关QA(持续更新....)
  16. Dev express 通过代码添加ribbonpage
  17. Opencv 实现 运动模糊的添加(motion blur)与消除(demotion blur)
  18. 快手信息流广告如何投放才能达到好的效果?
  19. 有一台服务器可以做哪些很酷的事情·2
  20. 1.6 airtest控制MUMU模拟器

热门文章

  1. 微信小程序获取附近商家
  2. Django1.11.4 在前端显示图片
  3. springcloud 项目maven依赖:Failure to find org.springframework.cloud:spring-cloud-dependencies
  4. 罗马数字转十进制 古罗马帝国开创了辉煌的人类文明,但他们的数字表示法的确有些繁琐,尤其在表示大数的时候, 现在看起来简直不能忍受,所以在现代很少使用了。
  5. oracle rownum left join,SQL常用指令集(Oracle)
  6. JAVA练习257-三维形体投影面积
  7. Tensorflow,pytorch,Caffe,MXNet,PaddlePaddle,THeano算法框架哪家强?
  8. Codeforces Round #405 B. Bear and Friendship Condition a-b,b-c a-c??
  9. dlib.get_frontal_face_detector()函数
  10. Windows Server2012R2插网线无网络---网络受限