更新 - 著者による修正済みの問題
ジャックは今日 (2013 年 2 月 4 日) にこの問題を修正したようです。彼のGithubページから最新リリースを取得する価値があります。
前の解決策
OK、jScrollPane を正しく動作させることができませんでした。そうしないと言っているわけではありませんが、カスタムのサイズ変更を使用して iframe のサイズを変更していましたが、jScrollPane の寸法計算ではうまく機能していなかったと思います。
解決
しかし、スタックオーバーフローのSharonのおかげで、より一般的な iOS iframe スクロールの問題の解決策のおかげで、なんとか機能させることができました。カラーボックスでよりうまくプレイするために、彼女のコードにいくつかの調整を加えました。これは、iframe コンテンツを制御する場合にのみ機能することに注意してください。
次のコードを iframe に挿入するだけです。
setTimeout(function () {
var startY = 0;
var startX = 0;
var b = document.body;
b.addEventListener('touchstart', function (event) {
startY = event.targetTouches[0].screenY;
startX = event.targetTouches[0].screenX;
});
b.addEventListener('touchmove', function (event) {
event.preventDefault();
var posy = event.targetTouches[0].screenY;
var h = parent.document.getElementById("cboxLoadedContent");
var sty = h.scrollTop;
var posx = event.targetTouches[0].screenX;
var stx = h.scrollLeft;
h.scrollTop = sty - (posy - startY);
h.scrollLeft = stx - (posx - startX);
startY = posy;
startX = posx;
});
}, 1000);
スクロールはぎくしゃくしませんが、ネイティブ スクロールのように徐々に減速することはなく、指を離すと停止するだけです。さらに、スクロールバーはありません。それ以外は完璧なソリューションです。
Sharon のソリューションを含むページは、iframe を制御しないシナリオを試すための代替手段を提供します。