注意:以下问题仅发生在4.4.2以上的Android版本上(据我所知)
<小时/> 带有click / tap / vclick / touchstart的 TL; DR 按钮,在我的cordova应用程序(仅限Android)中似乎只能部分工作(10-30%的时间)。
我正在尝试为ios / android / windows开发混合应用程序。在应用程序中,我偶尔会触发一些需要触发某些操作的按钮。
通常我会使用.on('click', function() { ... });
,但我了解到click
并不真正与移动设备配合使用。
我尝试使用click
,vclick
和tap
更改touchstart
。但似乎什么都没有触发我的点击事件。
接下来我试着看看是否有任何css阻止我的触发器,但没有任何一致。
这个问题是,当我在我的控制台中应用以下代码时,它有时会工作(并不总是):
$('.anyElement').on('tap', function(){
console.log("tapped");
});
我也尝试了以下内容,因为我认为绑定在某种程度上搞砸了:
$('.anyElement').off().on('tap', function(){
console.log("tapped");
});
所以目前我还不确定在哪里看。如果有可能让我弄清楚为什么我的东西不会被触发,那就太好了!
答案 0 :(得分:0)
在intel xdk上的cordova jquery应用程序上遇到了同样的问题,为我解决了这个问题,至少目前是评论&#34; fastclick.min.js&#34;在我的index.html中。似乎fastclick.min.js是导致Android上的问题,因为它正在IOS上工作,看看http://community.phonegap.com/nitobi/topics/simple-js-events-like-onclick-are-not-working-on-devices他也通过删除一些冲突的js来解决它,&#34; smoothstate.js&#34;在他的情况下。我仍然试图找出一个更好的解决方案,如果它存在