2012-02-13 10 views
4

私はphoneGap 1.1.0とiScroll 4.1.9を使ってiPhone & android appを作りました。
android-scroll textareaはうまく動作します。
しかし、iPhoneでは、テキストエリアがスクロールしていません。
私のiPhone 3GS(iOS 5.0.1)では2本の指のスクロールが機能しません
解決方法はありますか?
ありがとうございます。Scrollable <textarea> in iPhone

+0

私もこれに興味があります。 –

答えて

0

問題は、私はあなたとオフスクリーンスクロールからのアプリの「フレーム」を行うと無効にしようとしている何を考えてから茎:

document.addEventListener('touchmove', function(e) { 
    e.preventDefault(); 
}, false); 

残念ながら、私は私が考えることができるすべての組み合わせを試してみました新しい-webkit-overflow-scrolling: touch CSSプロパティ(無駄なもの)が含まれます。まだ解決策を見つけていない。

+0

ありがとう、実際には私の問題です。しかし、テキストエリアの上下にスクロールするときに、ページ全体のスクロールを防ぐ必要があります。 – qwerty

0

私はそれが少し遅れて知っているが、私は解決策を見つけた:

この質問にこの答えは、スクロールからのUIWebViewでUIScrollViewのを停止する: Disable Scroll on a UIWebView allowed?

私はMainViewControllerののviewDidLoad機能でこのコードを追加しました。メートル

for (UIView *view in webview.subviews) { 
    if ([view isKindOfClass:[UIScrollView class]]) { 
     UIScrollView *scrollView = (UIScrollView *)view; 
     scrollView.scrollEnabled = NO; 
    } 
} 

次の問題は、あなたがコードを変更することができるようにiscrollのデバッグバージョンを取得する必要があり、このため、TextAreaの上のイベントを処理するからiScrollを妨げている(第三リチウムne):

handleEvent: function (e) { 
    var that = this; 
    if(e.srcElement.tagName == "TEXTAREA") return; // don't handle textarea 
    switch(e.type) { 
     case START_EV: 
      if (!hasTouch && e.button !== 0) return; 
      that._start(e); 
      break; 
     case MOVE_EV: that._move(e); break; 
     case END_EV: 
     case CANCEL_EV: that._end(e); break; 
     case RESIZE_EV: that._resize(); break; 
     case WHEEL_EV: that._wheel(e); break; 
     case TRNEND_EV: that._transitionEnd(e); break; 
    } 
} 

と同様の理由であなたのテキストエリアのデフォルトを防止しません。

この組み合わせは私のために働いた。

-webkitタグとoverflow cssタグは、見栄えが良くなります。

Uhであり、ios4では、スクロールは2本の指で行われ、1回では行われません。

+0

ありがとうございます。私は次のチャンスでそれを試してみましょう。 – qwerty