请教JS在用HTML+CSS+JS封装的安卓APP里的滑动问题
<divid='xxx'><imgsrc='xxxx'/id='xx'></div>布局是这样的,DIV规定好宽高,Img在Div里拖拽,JS代码如下window.onl...
<div id='xxx'><img src='xxxx'/ id='xx'></div>
布局是这样的,DIV规定好宽高,Img在Div里拖拽,JS代码如下
window.onload=function ()
{
var oDiv=document.getElementById('oPan');
var oImg=document.getElementById('oImg');
var y=document.documentElement.clientHeight || document.body.clientHeight;
oDiv.style.height=y+'px';
oImg.onmousedown=function (ev)
{
var oEve=ev||event;
var oX=oEve.clientX-oImg.offsetLeft;
var oY=oEve.clientY-oImg.offsetTop;
document.onmousemove=function (ev)
{
var oE=ev||event;
var l=oE.clientX-oX;
var t=oE.clientY-oY;
oImg.style.left=l+'px';
oImg.style.top=t+'px';
}
document.onmouseup=function ()
{
oImg.onmousedown=null;
document.onmousemove=null;
}
}
}
-----
这个在PC端是可以的,但是封装到APP里后不能使用,改成事件绑定的形式也不信,求大神用
Touch事件帮改写下,不胜感谢 展开
布局是这样的,DIV规定好宽高,Img在Div里拖拽,JS代码如下
window.onload=function ()
{
var oDiv=document.getElementById('oPan');
var oImg=document.getElementById('oImg');
var y=document.documentElement.clientHeight || document.body.clientHeight;
oDiv.style.height=y+'px';
oImg.onmousedown=function (ev)
{
var oEve=ev||event;
var oX=oEve.clientX-oImg.offsetLeft;
var oY=oEve.clientY-oImg.offsetTop;
document.onmousemove=function (ev)
{
var oE=ev||event;
var l=oE.clientX-oX;
var t=oE.clientY-oY;
oImg.style.left=l+'px';
oImg.style.top=t+'px';
}
document.onmouseup=function ()
{
oImg.onmousedown=null;
document.onmousemove=null;
}
}
}
-----
这个在PC端是可以的,但是封装到APP里后不能使用,改成事件绑定的形式也不信,求大神用
Touch事件帮改写下,不胜感谢 展开
1个回答
2015-03-13
展开全部
因为手机上只有touch事件啊。。。试试吧大概这个意思
oImg.addEventListener("touchstart",function(ev){
var oEve=ev||event;
var oX=oEve.clientX-oImg.offsetLeft;
var oY=oEve.clientY-oImg.offsetTop;
},false);
oImg.addEventListener("touchmove",function(ev){
var oE=ev||event;
var l=oE.clientX-oX;
var t=oE.clientY-oY;
oImg.style.left=l+'px';
oImg.style.top=t+'px';
},false);
oImg.addEventListener("touchend",function(ev){
//。。。。
},false);
oImg.addEventListener("touchstart",function(ev){
var oEve=ev||event;
var oX=oEve.clientX-oImg.offsetLeft;
var oY=oEve.clientY-oImg.offsetTop;
},false);
oImg.addEventListener("touchmove",function(ev){
var oE=ev||event;
var l=oE.clientX-oX;
var t=oE.clientY-oY;
oImg.style.left=l+'px';
oImg.style.top=t+'px';
},false);
oImg.addEventListener("touchend",function(ev){
//。。。。
},false);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询