0

我有一个问题..我有一页是这样的:

 <div data-role="content">


    <div id="loadingSchedaAuto" ></div> 

        <div id="datiAuto" style="display:none">

            <img src=""  class="imgPrincipale" alt="" width="100%" height="auto" style="padding:2px; border:1px solid #000;"  />

            <p class="nome" align="center"></p>

            <ul style="padding: 5px; " data-role="listview" data-inset="true" data-theme="a" >

            <li data-role="list-divider">Dati generali</li>
            <li>
                <strong>Prezzo</strong>: <span class="prezzo" style="color:#E30025; font-weight: bold;"></span>
            </li>
            <li>
                <strong>Alimentazione</strong>: <span class="alimentazione"></span>
            </li>
            <li>
                <strong>Cilindrata</strong>: <span class="cilindrata"></span>
            </li>
            <li>
                <strong>Potenza</strong>: <span class="potenza"></span>
            </li>
            <li>
                <strong>Colore</strong>: <span class="colore"></span>
            </li>

            <li id="immatricolazione" > <!-- id aggiunto per poter inserire una li degli interni dopo immatricolazione -->
                <strong>Immatricolazione</strong>: <span class="immatricolazione"></span>
            </li>

            <div data-role="collapsible" data-collapsed="true" data-collapsed-icon="arrow-r" data-expanded-icon="arrow-d">
                <h3>Cambio</h3>
                <ul data-role="listview">
                <li>
                <span class="cambio"></span>
                </li>
                </ul>

            </div>
            <div data-role="collapsible" data-collapsed="true" data-collapsed-icon="arrow-r" data-expanded-icon="arrow-d" id="equipaggiamento">
                <h3>Equipaggiamento</h3>
                <ul class="equip" data-role="listview" data-mini="true"></ul>
            </div>
        </ul>



    </div>

</div>

id=datiAuto 的 div 是动态的,我需要在每次加载之前显示加载消息。

我做了这个功能:

      function showLoading(loading, scheda) {
 alert("load pagina");
 $(loading).show();
 $(scheda).hide();


};

function showSchedaAuto(loading, scheda) {

    $(loading).remove();
    alert("pagina caricata");
     $(scheda).show();


    };

我在这里调用这个函数:

 $(document).delegate("#scheda-auto", "pageshow", function() {

    showLoading("#loadingSchedaAuto", "#datiAuto"); 

    $("#scheda-auto").load("scheda.html #datiAuto", function() {

        showSchedaAuto("#loadingSchedaAuto", "#datiAuto");
    });..................

这工作一次,但我第二次尝试显示 Div,页面是空白的!

任何人都可以帮助我吗?

谢谢!大卫

4

2 回答 2

0

如果您说代码工作正常但曾经尝试使用.on()而不是.delegate().

希望此代码对您有用:

$(document).on("pageshow","#scheda-auto", function() {

   .......
    });  
于 2013-06-27T07:38:27.817 回答
0

我认为问题出在这里

function showSchedaAuto(loading, scheda) {

    $(loading).remove(); 
    alert("pagina caricata");
    $(scheda).show();

};

$(loading).remove(); // 你正在从 DOM 中删除元素,可能你想隐藏它

也使用.on(),不推荐使用 .delgate() 。for 的语法on()与委托有点不同。

于 2013-06-27T08:23:48.207 回答