-1

touchwipe jsを改善しようとしています。水平スクロールのみを処理したい場所で、垂直スクロールが発生した場合はブラウザに修正を処理させますが、ios5 では問題なく動作しますが、ios6 ではフリーズしますか?

http://archive.plugins.jquery.com/project/Touchwipe-iPhone-iPad-wipe-gesture

次のコードを見つけてください

function onTouchMove(e) {   

         //var e = (e.changedTouches != undefined)? touches[0] : e; 
         if(isMoving) {              
             var x = e.touches[0].pageX;
             var dx = startX - x;
             if(Math.abs(dx) >= config.min_move_x)
             {
                 if(config.preventDefaultEvents) { 
                     e.preventDefault();                 
                 }
                cancelTouch();
                if(dx > 0) {
                    config.wipeLeft();
                }
                else {
                    config.wipeRight();
                }
                return false;
            }
             else {
                   console.log('y moving.. ');
                   // attachTouch();
                    return true;
             }
         }

     }

詳細を追加するだけです。BXslider でリストを水平にアニメーション化しようとしていますが、タッチ イベントをサポートしたいので、タッチ ワイプ jquery を追加しました。しかし、それを追加すると、水平スクロールのアニメーションは正常に機能しますが、タッチページの垂直スクロールが機能しないという1つの問題が発生します。

だから私はtrueを返すことで問題を修正しようとしました。その唯一の Y 移動の場合、touchwipe js で。この修正は android4 と ios5 では正常に機能しますが、ios6 では、ページを垂直方向に少し積極的にスクロールすると失敗します (4 ~ 5 秒間楕円形/円で指を動かす)、そのフリーズ bxslider アニメーション。

さらにデバッグすると、bxslider.gotoNextSlide()-> スライド用の Jquery $parent.animate() メソッドが呼び出されます。これは、積極的なスクロール後に ios6 で動作しなくなります。

今、私は動けなくなり、なぜこの animate() が機能しなくなるのか理解できません??

例 >>>

http://jsfiddle.net/qtCHx/

4

1 に答える 1

2

これはおそらくこのバグが原因で発生します:http: //bugs.jquery.com/ticket/12620

ここでの一時的な解決策: https ://gist.github.com/3798925

于 2012-11-28T00:51:40.767 に答える