我有一个html网络应用,我正在添加滑块:
<form oninput="output1.value=slider1.value">
<input type="range" name="slider1" value="50"/>
<output name="output1" for="slider1">50</output>
</form>
在网络和设备上运行良好。
现在,当我添加preventdefault代码来停止页面滚动时,它会中断:
document.addEventListener( 'touchmove' , function(e) {e.preventDefault()} , false );
现在,如果这是我自己的控件,我可以解决它,但我想要html5滑块的默认行为,我该怎么回来?
答案 0 :(得分:1)
不确定这可能是重复的,但以防万一:
function stopScrolling( touchEvent ) {
if ((touchEvent.target.id != "pastGenSlider") && (touchEvent.target.id != "curGenSlider"))
touchEvent.preventDefault();
}
document.addEventListener( 'touchmove' , stopScrolling , false );
只需检查元素的id,以及是否允许它处理它,只需让它通过/不要调用preventDefault();