1

私はこれに数日間苦労しています。選択メニューをナビゲーション メニューとして機能させようとしています。しかし、ボタンをクリックしても何も起こりません。@Enrico のおかげで、changePage コードが正しいと思います。また、リンクでは Ajax をオフにする必要があることもわかりました。Ajax を無効にしようとして、少しやり過ぎました。頭の中の私のコードは次のとおりです。

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile.structure-1.2.0.min.css" />
<base href="http://kickfitness.com/" />
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script language="text/javascript">
/* VERY IMPORTANT this is before loading jquery.mobile JS */
$( document ).on( "mobileinit", function() {
    // Make your jQuery Mobile framework configuration changes here!
    $.mobile.allowCrossDomainPages = true;
            $.mobile.ajaxEnabled = false;
            });
 $(document).bind("mobileinit", function(){
        $.mobile.ajaxEnabled = false;
        });
</script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.js"></script>

<script language="text/javascript">
$(function() {
    $("#select-choice-1").change(function() {
        $.mobile.ajaxEnabled = false;
        $.mobile.changePage($(this).val());
    });        
});
</script>

ここに私のメニューがあります:

<div id="MobileWrapper" data-role="fieldcontain">
<select name="select-choice-1" id="select-choice-1" data-theme="a" data-form="ui-btn-up-a"data-native-menu="false" data-mini="false"><!-- data-native-menu="false" -->
<option data-placeholder="true">Navigation</option><!-- data=placeholder makes this not show up in the pop up-->
<option value="http://kickfitness.com/index.php">Home</option>
<option value="/services/index.php">Services</option>
<option value="trainers/index.php">Trainers</option>
<option value="/locations/index.php">Locations</option>
<option value="/calendar/index.php">Calendar</option>
<option value="/contactus/index.php">Contact Us</option>
</select>
</div><!--END MobileWrapper DIV-->

ページへのURLはこちらです。これはレスポンシブ CSS で行われるため、ブラウザー ウィンドウを非常に小さくすることでモバイル ナビゲーションを表示できます。 http://kickfitness.com/services/index2.php

どんな助けでも大歓迎です。

4

1 に答える 1

0

すべての $.mobile.ajaxEnabled 設定は必要ありません。オプション "reloadPage" を true にして changePage を呼び出すだけです。

$(function() {
    $("#select-choice-1").change(function() {
        $.mobile.changePage($(this).val(), { reloadPage: true } );
    });        
});
于 2012-12-18T04:29:00.653 に答える