平台目标 - android 4.0 及以上。
环境 - 使用phonegap的html5+css3+javascript
在上述环境下的我的应用程序中,我想要一个弹出菜单,它只不过是 <div>
,当用户触摸按钮时,会出现在按钮顶部上方恰好几个像素的位置。到目前为止,我已经解决了这个问题:
<head>
<script type="text/javascript" charset="utf-8">
var touchme=document.getElementById('#button');
function onDeviceReady(){
touchme.addEventListener('touchstart',onNav, false);
}
function onNav() {
popup=document.querySelector("#divPop");
popup.style.display="block"; //this will make a popup appear
touchme.getBoundingClientRect();
navigator.notification.alert(touchme.top);
}
</script>
</head>
现在的问题是,即使警报也没有显示。那么我如何获得按钮的坐标呢?
最佳答案
首先,在加载 DOM 后尝试该代码 - 您的脚本位于 <head>
中标签,并且您正在尝试访问元素 #button
先发制人。
var touchme = null;
function onDeviceReady(){
touchme = document.getElementById('#button');
touchme.addEventListener('touchstart',onNav, false);
}
window.addEventListener("DOMContentLoaded", onDeviceReady, false);
至于坐标,请查看事件的 screenX 和 screenY 属性(传递给 onNav)。要查找的属性本质上与常规鼠标单击的属性相同。
function onNav(e) {
alert(e.screenX + ' ' + e.screenY);
}
关于javascript - android+phonegap环境下如何获取触摸坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15803181/