起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5447|回复: 6

[结贴] 在h5写的拖曳事件转换成移动端

[复制链接]

86

主题

338

帖子

879

积分

高级会员

Rank: 4

积分
879
QQ
发表于 2018-7-31 10:39:17 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
在h5用原生js写了个简单图片拖曳的例子,但是在转移到bex5的时候出现了各种各样不兼容的问题。其中有几个鼠标的事件不知道怎么转换,image的方法不够,以下直接上代码。

//鼠标滚轮事件
    window.onmousewheel = document.onmousewheel = scrollFunc; //IE/Opera/Chrome
    //不出新窗口,变成可拖曳事件
        function scrollFunc(e) {
        if (e.target != document.getElementById("pic")) {
            return;
        }

    //放大缩小
        var oImg = document.getElementById("pic");
        var direct = 0;
        e = e || window.event;
        //var t1=document.getElementById("wheelDelta");
        //var t2=document.getElementById("detail");
        if (e.wheelDelta) { //IE/Opera/Chrome
            if (e.wheelDelta > 0) {
                ...
            }
        } else if (e.detail) { //Firefox
            if (e.detail > 0) {
                ...
            }
        }

以上是鼠标的mousewheel滚轮操作,想要转变成手势放大和缩小。之后上拖曳的
div1.onmousedown = function(ev) {
        ev.preventDefault();
        var oevent = ev || event;
        var distanceX = oevent.clientX; //鼠标点击位置
        var distanceY = oevent.clientY; //鼠标点击位置
}
还有mousemove和mouseup也是用到了clientX这个值,但是image组件只有click,mouse,key,touch,load几个事件,不知道怎么转换,求解


91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-31 11:07:27 | 显示全部楼层
参考/UI2/system/components/justep/touch/demo/touchjs/mainActivity.w
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

86

主题

338

帖子

879

积分

高级会员

Rank: 4

积分
879
QQ
 楼主| 发表于 2018-7-31 14:14:22 | 显示全部楼层
有没有轻量级的,我那个只是一个拖曳,不想导入这么大的js
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-31 14:54:57 | 显示全部楼层
没有
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复

使用道具 举报

86

主题

338

帖子

879

积分

高级会员

Rank: 4

积分
879
QQ
 楼主| 发表于 2018-8-1 09:06:38 | 显示全部楼层
bex5不支持监听事件的吗?
img.addEventListener("touchstart", function(event){

img获取的是页面的图片Xid,确定没错
报错说TypeError: img.addEventListener is not a function(…)
checkImage.js:54 Uncaught TypeError: img.addEventListener is not a function
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-8-1 09:52:34 | 显示全部楼层
image上本来就是bind-touchstart事件,可以直接在事件中实现
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

86

主题

338

帖子

879

积分

高级会员

Rank: 4

积分
879
QQ
 楼主| 发表于 2018-8-1 17:25:13 | 显示全部楼层
ok  可结帖
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-8-24 10:31 , Processed in 0.057506 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表