android-emulator - jQuery Mobile Listview-列表项onClick在Android模拟器中永远不会触发

原文 标签 android-emulator jquery-mobile cordova

在jQuery Mobile listview中,我有一系列项目:

<ul data-role="listview" id="lv_systems" data-inset="true">
  <li><a href="#page2" data-id="sys1">System 1</a></li>
  <li><a href="#page2" data-id="sys2">System 2</a></li>
    ....
</ul>


$(document).ready()中,我向每个<a>添加一个点击处理程序,如下所示(建议here)(#select_system是页面名称):

$(document).ready( function () {         

$('#select_system').live ('pagecreate', function(){
    $('#lv_systems').delegate('li', 'click', function(){
             alert('list item clicked');
    });
});
    $('#lv_systems').listview('refresh');
});


在浏览器(Chrome和Safari)中进行测试时,测试此代码非常有效,但是在带有PhoneGap的Android仿真器中,永远不会显示警报消息,这似乎使事件绑定不正确。

我想念什么?

最佳答案

自我备忘录:RTFM

代替使用委托绑定到click,而是绑定到vclick,即

....
$('#lv_systems').delegate('li', 'vclick', function(){
....


根据文档,


规范事件,用于处理触摸或鼠标click事件

相关文章:

android - GCM运作需要Google Play服务应用程式吗?

android - 为什么我的Android模拟器经常挂起?

javascript - cordova.exec()破坏了我的应用程序代码

android - 在Google Android上实现RSS阅读器的最简单方法?

javascript - jQuery Mobile-关闭对话框后跳出固定标头(Firefox)

javascript - 单击弹出选项时如何获取行ID(使用全局变量获取ID)?

css - 网站无法在移动设备上滚动

javascript - PhoneGap deviceready事件未触发

javascript - 无法访问Cordova SQLite存储插件

android - 自定义对话框,其中包含单选列表项