按住iOS中的文本不会在jQueryMobile对话框中显示“复制”button,当使用AJAX

我正在谈论popup的这些对话框之一: http : //jquerymobile.com/test/docs/pages/page-dialogs.html

(手机短urlhttp://bit.ly/KhCGVD )

点击“打开对话框” – 在该对话框中,除非在链接中使用“data-ajax =”false“”,否则在iOS中没有任何东西是可复制的。 (在Android上正常工作)

将'-webkit-user-select:auto!important'放入 (或“文本”而不​​是“自动”)什么都不做。

添加javascript'document.documentElement.style.webkitTouchCallout =“auto”;' 什么也没做。

我急于做这个工作,因为我已经build立了一个完整的东西,假设复制将在iOS和Android上工作,但没有在iOS中testing,直到它完成:(。

任何帮助将不胜感激,谢谢。

编辑:testing4.3.5 – 4.3.2 – iOS 5.1 – 不工作

恐怕我不能提供简单的回答你的问题(如添加configuration或初始化),但我希望目前的解决scheme就足够了。


问题

这个框架的代码中存在相当深的问题。 首先,我们有一个jquery.mobile.dialog.js文件,其中有一行:

$el.bind( "vclick submit", function( event ) { // code }) 

正如你在这里看到的,我们将绑定vclick添加到$ el – 整个对话框容器中。

事件vclick它自己是由jQuery Mobile在vmouse.js中生成的,在挖掘之后,我设法检测出现实际问题的位置:

  $( this ).bind( realType, dummyMouseHandler ); 

这条线是需要在一些浏览器,即Opera Mini(在这条线上面的注释文本中描述的)中进行事件工作。


所以,这里是解决scheme之一,打开文件jquery.mobile.vmouse.js和注释掉行

  $( this ).bind( realType, dummyMouseHandler ); 

我已经在iPad上进行了testing,复制function在这个小小的补丁之后可用。