针对IOS上的safari目的是禁止默认的拖动事件但允许其中某div的滚动拖拽禁止拖动的默认事件document.body.ontouchmove=function(e){e.preventDefault();}下面链接的搜索按钮打开之后的列表需要拖动但要禁止全局拖动(带反弹效果的默认拖动效果)http://itorr.sinaapp.com/fm补充还有个奇怪的现象在触发了设置IOSsafari特有的滚动样式的div的拖动事件页面会自动禁止惯性拖动猜测可能可以利用这个特性
2 回答
江户川乱折腾
TA贡献1851条经验 获得超5个赞
你只是把body中的touchmove事件prevent掉了。捕获到你想要拖动的div的touchmove事件就行了。javascriptdocument.querySelectorAll('div')[0].ontouchmove=function(e){//dosomething...};
弑天下
TA贡献1818条经验 获得超8个赞
问题解决T_T犯蠢了。。。禁止body的触摸移动的默认动作之后document.body.ontouchmove=function(e){e.preventDefault();}在需要滚动拖拽的div上停止冒泡即可解决OAQdiv.ontouchmove=function(e){e.stopPropagation();//停止冒泡};
添加回答
举报
0/150
提交
取消