使用ajax时,在iOS中按住文本不会显示jQueryMobile对话框上的“复
我正在谈论弹出的其中一个对话框:
http://jquerymobile.com/test/docs/pages/page-dialogs.html (移动http://bit.ly/KhCGVD的简称网址) 单击“打开对话框” – 在该对话框中,除非在链接中使用“data-ajax =”false“’,否则在iOS中不能复制任何内容. (适用于Android) 放’-webkit-user-select:auto!important;’ (或’text’而不是’auto’)什么都不做. 添加javascript’document.documentElement.style.webkitTouchCallout =“auto”;’什么也没做. 我非常渴望能够完成这项工作,因为我已经建立了一个完整的东西,假设复制可以在iOS和Android上运行,但是在iOS完成之前没有测试:(. 任何帮助将不胜感激,谢谢. 编辑:在4.3.5 – 4.3.2 – iOS 5.1上测试 – 无法正常工作 解决方法
我担心我无法为你的问题提供简单的答案(比如在config或init中添加一些内容),但我希望当前的解决方案就足够了.
问题 问题在于该框架的代码.首先,我们有一个jquery.mobile.dialog.js文件,其中有一行: $el.bind( "vclick submit",function( event ) { // code }) 正如您在此处所看到的,我们正在向$el – 整个对话框容器添加绑定vclick. 它自己的事件vclick是由jQuery Mobile在vmouse.js中生成的,在挖掘之后我设法检测到实际问题出现的地方: $( this ).bind( realType,dummyMouseHandler ); 这条线是在某些浏览器中使事件工作所必需的,即Opera Mini(如此行上方的注释文本中所述). 解 所以,这里有一个解决方案,打开文件jquery.mobile.vmouse.js并注释掉行 $( this ).bind( realType,dummyMouseHandler ); 我在iPad上进行了测试,在这个小补丁之后可以使用复制功能. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |