2012-11-07 115 views
1

我在iOS上使用「新」CSS屬性來實現滾動勢頭-webkit-overflow-scrolling。我有一個<div>的列表,您可以滾動並選擇,以便選擇器消失,並將選定的項目放置在別處。問題是如果項目A在位置(X,Y);向上滑動以向下滾動,並且在滾動動量被激活的同時,再次點擊位置(X,Y),其中項目A曾經是,但現在被向上移動的項目B佔據,項目A是正被選擇的位置。點擊滾動勢頭是越野車

視頻是值得一萬個字:https://www.youtube.com/watch?v=mXh28IY3wIU

這是一個已知的bug?我使用jQuery的移動事件「水龍頭」,像這樣:

$selector.on('tap', '.act-item-inner', function(e){ 
    e.preventDefault(); 
    var $selected=$(this); 
    [...] 
} 

,你會想象,$選擇是包裝和$選擇的是B項

回答

0

同時通過網站上的iOS滾動瀏覽器

  1. 從您的網站截圖
  2. 並凍結JavaScript引擎(包括所有JavaScript-/DOM事件)。

所以,是的,這是衆所周知的。但它像設計一樣工作。 您可以通過setTimeoutsetInterval將一些消息打印到控制檯來觀察此行爲。你會發現它們在彈性滾動過程中不會被執行。

我建議在發動機解凍時,這會導致您的特定用例中的競爭條件。