0

jQuery モバイル プロジェクトで iScroll が正しく初期化されないという問題があります。iScroll プラグインは、1 つのサブページでのみ使用されており、大きな画像で水平スクロールを可能にします (Android のブラウザーはそのままではサポートしていないため、Android で動作させる必要があります)...

URL に直接アクセスするか、手動で更新すると、プラグインは正しく機能します。しかし、別の開始点からメニューからアクセスすると、機能しません。これは jQuery モバイルでの ajax の読み込みと関係があると推測していますが、リンクに data-ajax="false" を設定することはオプションではありません。 iOS (data-ajax="false" を含むリンクが、奇妙な理由で新しい Safari ウィンドウで開きます)。

head タグ内:

<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js
</script>
<script type="application/javascript" src="js/iscroll.js"></script>
<script type="text/javascript">
var myScroll;
function loaded() {
    setTimeout(function () {
        myScroll = new iScroll('wrapper');
        refresh();
    }, 100);
}
window.addEventListener('load', loaded, false);
</script>

コンテンツ セクション:

<div data-role="content">
  <div id="wrapper">
    <div id="scroller">
    <img src="images/turkart.png" />
    </div>
  </div>
</div>

ロード後に実際のページを強制的に更新する方法はありますか、または iScroll を強制的に正しく初期化する方法はありますか?

4

1 に答える 1

0

2 番目の質問に答えるには、つまり別の方法があります: https://github.com/watusi/jquery-mobile-iscrollviewに jQM 用の非常にきちんとした iScroll プラグインがあり、実装が非常に簡単で、初期化について心配する必要はありません。問題

于 2012-07-16T01:43:42.473 に答える