移动端,同一页面不同层的划动操作会造成相互影响,需要额外处理
如:页面层和弹出层(如picker选择划动)都有划动,同一个页面的不同层划动操作,造成相互影响,需要启用与禁用touchmove来处理.
addEventListener()和removeEventListener()用于处理指定和删除事件处理程序操作,所有DOM节点中都包含这两种方法,
并动接受3个参数:
element.addEventListener(type, listener, useCapture)
element: 要绑定函数的对象;
type: 事件名称, 'click', 'blur',不能加'on';
listener: 绑定的事件函数,不要跟括号;
useCapture: 布尔值,表示该事件的响应顺序,
true -> 表示在捕获阶段调用事件处理程序, false -> 表示在冒泡阶段调用事件处理程序
使用:
var handler = function(e){
e.preventDefault();
}
document.addEventListener('touchmove', handler, false);//阻止默认事件
document.removeEventListener('touchmove', handler, false);//打开默认事件
注意: 添加和移除的函数对象应该是同一个,要不然移除不起作用,即listener不能直接用匿名函数function(e){e.preventDefault();}
如:页面层和弹出层(如picker选择划动)都有划动,同一个页面的不同层划动操作,造成相互影响,需要启用与禁用touchmove来处理.
addEventListener()和removeEventListener()用于处理指定和删除事件处理程序操作,所有DOM节点中都包含这两种方法,
并动接受3个参数:
element.addEventListener(type, listener, useCapture)
element: 要绑定函数的对象;
type: 事件名称, 'click', 'blur',不能加'on';
listener: 绑定的事件函数,不要跟括号;
useCapture: 布尔值,表示该事件的响应顺序,
true -> 表示在捕获阶段调用事件处理程序, false -> 表示在冒泡阶段调用事件处理程序
使用:
var handler = function(e){
e.preventDefault();
}
document.addEventListener('touchmove', handler, false);//阻止默认事件
document.removeEventListener('touchmove', handler, false);//打开默认事件
注意: 添加和移除的函数对象应该是同一个,要不然移除不起作用,即listener不能直接用匿名函数function(e){e.preventDefault();}