2012-05-20 60 views
0

我正在通過AJAX更新一些按鈕的列表。我的功能一般工作正常,但它會在一段時間後產生白色屏幕。當我點擊按鈕並使用後退按鈕並重復幾次時,就會發生這種情況。當我使用AJAX刷新運行時提供的大約10個按鈕時,點擊後會崩潰。當我刷新時,假設有20個按鈕,第一次按下後退按鈕時會立即崩潰。 LogCat在應用程序崩潰時不會說任何內容。我試圖用一個livequery調用替代button()調用,但它會在一段時間後產生相同的崩潰。點擊後退按鈕時,jquery按鈕()會導致白屏

我正在開發一個本地應用程序。如果我在Firefox中嘗試它作爲一個Web應用程序,它可以正常工作而不會崩潰。

我不知道我的問題是否與可用內存有關。我正在測試三星Galaxy Ace,剩餘50 MB內存和1 GB SD卡。

$(".warenkorb_class").click(function(e) { 
     e.stopImmediatePropagation(); 
     e.preventDefault(); 
     $.post("http://mydomain/backend.php",{    
      action: "warenkorb", kunden_id: $local_kunden_id }, 
      function(data) { 
     $.mobile.changePage("#warenkorb"); 
     $("#warenliste").html(data); 
      $("#warenliste").listview("refresh"); 
      $(".warenliste_button_class").button(); 
     }, "html"); 
     }); 

我是新的android開發,我一直在這個問題苦苦掙扎了一段日子,他很高興,如果有人可以幫助我在此。

感謝和問候, 弗洛裏安

編輯: 這裏是創建了按鈕的代碼backend.php部分:

echo"<tr>"; 
echo utf8_encode("<td><a class='delete_button' href='#warenkorb' data-role='button' data-icon='delete' data-iconpos='notext' data-mini='true' data-inline='true' data-theme='b' id='1_$bestellungen_id'>Position löschen</a></td>"); 
echo utf8_encode("<td><a class='minus_button' href='#warenkorb' data-role='button' data-icon='minus' data-iconpos='notext' data-mini='true' data-inline='true' data-theme='b' id='2_$bestellungen_id'>eins weniger</a></td>"); 
echo"<td><a class='warenliste_button' href='#warenkorb' id='3_$bestellungen_id' data-mini='true'>$bestellungen_anzahl</a></td>"; 
echo utf8_encode("<td><a class='plus_button' href='#warenkorb' data-role='button' data-icon='plus' data-iconpos='notext' data-mini='true' data-inline='true' data-theme='b' id='4_$bestellungen_id'>eins mehr</a></td>"); 
echo utf8_encode("<td><a class='warenliste_button' href='#warenkorb' id='5_$bestellungen_id' data-mini='true' data-inline='true'>$produkte_bezeichnung</a></td>"); 
echo "</tr>"; 

回答

0

我想看看優化代碼,嘗試刪除類選擇器,並用id選擇器替換它,它不可能在選擇器中更具體,即做button.warenliste_button_class。

我會對此進行排序,因爲崩潰可能是由於腳本在執行時內存不足而導致的。另外結賬螢火/控制檯檢查ANS看到發生了什麼,檢查長時間運行的腳本,大量的數據被張貼等

退房此鏈接瞭解更多優化建議

http://www.archer-group.com/2011/technology/jquery-javascript-optimization

沒有更多像jquery正在操作的功能和數據信息我沒有更多的建議。

+0

最後,事實證明,這個問題不是特定於button(),而是它 - 正如您所建議的那樣 - 存在一個普遍存在的問題,在涉及多個按鈕時很可能發生這種問題。我修改了我的完整代碼,現在它工作正常。謝謝! – Florian