我是移动编程的新手,已经面临这个问题了。
使用jQuery mobile时,只有像“点击”这样的普通事件才能正常工作,但不会像“tap”或“taphold”这样的移动设备。我错过了什么?我已经找到了一些关于在链接jQuery文件时使用正确顺序的提示,但我没有看到任何错误。
<script src="js/jquery.js" type="text/javascript"></script>
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.7.2/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet-0.7.2/leaflet.js"></script>
<link rel="stylesheet" type="text/css" href="css/map.css"></link>
<script src="http://open.mapquestapi.com/sdk/leaflet/v0.1/mq-map.js?key=**"></script>
<script src="http://open.mapquestapi.com/sdk/leaflet/v0.1/mq-geocoding.js?key=**"></script>
<script src="js/index.js"></script>
<script src="js/jquery.mobile.js" type="text/javascript"></script>
<script type="text/javascript">
window.onload = function() {
loading('show');
map = L.map('map', {
layers: MQ.mapLayer(),
center: [51.137140, 10.239258],
zoom: 6
});
$(document).on("tap", "#map", function(e) {alert("lel");} );
loading('hide');
};
</script>
另一方面,这是有效的:
$(document).on("click", "#map", function(e) {alert("lel");} );
答案 0 :(得分:0)
看起来tap没有长期格式的&#39; .on&#39;
它只有提供回调函数的格式。尝试
$("#map").on("tap",function(e) {alert("lel");} );
修改强>
看起来长形也很好用。你能检查一下你是否有合适的图书馆吗?我无法下载地图,但似乎在div上工作正常。
我添加了tap和taphold。有趣的是,在Android Chrome上,如果首先检测到点击,则可以停止点击,但如果先检测到点击,则点击始终会触发。