0

私が使用しているjqueryモバイルアプリがあり、正しいパネルを開こうとしています。通知用です。私はそれがajaxと関係があり、複数のページで行われていると感じています。ドキュメントに多くのページがあり、各 "myContent" div と関数 toggleDiv に一意の ID を割り当てました。何らかの理由で、アイコンをクリックしてパネルを開くと何もしません。もう一度クリックすると、パネルが開き、すぐにパネルが閉じます。

これが私のコードです。これがどのように起こっているかについての手がかりはありますか?

<script type="text/javascript">
function toggleDiv(divId) {
   $("#"+divId).toggle();
$(document).ready(function(){
         $("#myContent").load("getnotes.php?name=<? echo $username; ?>");
    });
}
</script>

<!-- BEGIN PAGE 1 -->
<div data-role="page" id="feed" data-add-back-btn="true">
    <div data-role="panel" id="settingspanel" data-position="left" data-display="overlay">
<!--LEFT SIDE PANEL CONTENT HERE-->

    </div>

    <div data-role="header" data-position="fixed" data-theme="c" data-tap-toggle="false" data-id="foo1" style="padding-top: 5px; border-bottom: 1px solid #eccfb3; padding-bottom: 5px;">
        <a href="#settingspanel" data-role="button" data-iconpos="notext" class="icon-reorder icon-2x" style="background: none; margin-left: 20px;"></a>
        <center><img src="images/logo_app_white.png" height="25px"></center>

    <!--THIS IS THE BUTTON TO PUSH TO MAKE NOTIFICATIONS APPEAR-->  
        <a href="#myContent" data-ajax="false" onclick="toggleDiv('myContent');" data-role="button" data-iconpos="notext" class="icon-bell-alt icon-2x" style="background: none; margin-right: 20px;"></a><? echo $number; ?>
    </div>

    <div data-role="content">   

        <!--THIS IS WHERE CONTENT FOR THE PAGE GOES-->


    </div>
    <div data-role="footer" data-position="fixed" data-theme="c" data-tap-toggle="false" data-id="foo1" style="border-top: 1px solid #eccfb3; padding-top: 5px;">
        <div data-role="navbar" style="background: #ce8339;">
                <!--ICONS FOR NAVIGATION BAR-->
        </div><!-- /navbar -->  
    </div>

        <!--HERE IS WHERE THE NOTIFICATIONS APPEAR-->
    <div data-role="panel" id="myContent" data-position="right" data-display="overlay">


    </div>


</div>

<!-- END PAGE 1 -->
4

1 に答える 1

1

ドキュメントを機能から準備します。そして、toggle() から show() へ。

これを変える

function toggleDiv(divId) {
   $("#"+divId).toggle();
      $(document).ready(function(){
         $("#myContent").load("getnotes.php?name=<? echo $username; ?>");
      });
   }

これに

function toggleDiv(divId) {
   $("#"+divId).show();
}

$(document).ready(function(){
   $("#myContent").load("getnotes.php?name=<? echo $username; ?>");
});

デモ

于 2013-09-06T20:52:15.610 に答える