2013-02-14 53 views
0

我有一個HTML的Web應用程序,並且我加入滑塊,像這樣:HTML防止滾動還可以防止HTML5輸入類型範圍

<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

只是想到了什麼,也許我可以檢查事件的主人,如果它的滑塊,讓它通過 – nycynik 2013-02-14 21:18:15

回答

1

不知道這可能是重複的,但以防萬一:

function stopScrolling(touchEvent) { 
    if ((touchEvent.target.id != "pastGenSlider") && (touchEvent.target.id != "curGenSlider")) 
     touchEvent.preventDefault(); 
} 
document.addEventListener('touchmove' , stopScrolling , false); 

就檢查什麼ID的元素了,而如果是要允許它來處理事情,就讓它通過/不要調用preventDefault();