平台目标 - 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>
现在的问题是,即使是警报也没有出现。那么我如何获得按钮的坐标?
答案 0 :(得分:3)
首先,在加载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);
}