私はjQuery Mobileを使用しています。そして真実を伝えるために、私の頭は今回転しています。私のイベントは次のページで起動しません
私はこのコードを持っている:
//this event happens in my index.php/page1
//this works
$(document).delegate('.front-page-down','swipedown', function (event) {
$.mobile.changePage('#notification', { transition: "slidedown"});
});
$(document).delegate('.swipeup','swipeup', function (event) {
$.mobile.changePage('#front-page', { transition: "slideup"});
});
//this event happens in my next page/page2
//doesn't work, I have to manually refresh the page first
$(document).delegate('.sns-down','swipedown', function (event) {
$.mobile.changePage('#featured', { transition: "slidedown"});
});
$(document).delegate('.featured-up','swipeup', function (event) {
$.mobile.changePage('#sns-page', { transition: "slideup"});
});
最初の2(クラスフロントページダウン& swipeup)それは私のindex.phpや私のページの最初のロードが、第三のコード(クラスに発射しているため動作しますsns-down &フィーチャーアップ)はそうではありません。最初にページを手動でリフレッシュして機能させる必要があります。今はなぜそれに反応しているのですか?
誰かを助けてください。
デリゲートに渡された関数は、まったく呼び出されていますか?これを証明するために 'console.log'sや何かを追加しましたか?ブラウザのコンソールから、 '$("。sns-down ")'が第1、第2、第3などのページの読み込み後に何を返しますか? –
私のモバイルブラウザではconsole.logをテストできません。私はalert()しか使用できません。最初の2人がalert()をトリガーします。しかし、私が次のページに行き、3人目と4人目のデリゲートを起動させると、それは起動しません。 T_T –
デスクトップChromeでテストできますか?そうでない場合は、アプリがテスト目的でモバイルとデスクトップの両方で動作することを確認することをお勧めします。 –