2011-02-12 53 views
0

以下代碼片段適用於FF,IE和Chrome。
但是它在Safari 5.0.3中不起作用!
Safari不會返回任何類型的錯誤消息。
(請注意,由於某種原因,'debugger;'命令在任何瀏覽器中都不會捕獲,並且彈出警報從不會發生'alert'('Pop up now now close');',但是ajax似乎可以在還提到3不知)jQuery - 簡單的Ajax錯誤,還是複雜的Safari問題?

$(document).ready(function(){ 
    // debugger; <-- This works 
    $(".oscform").click(function(){ 
     debugger; // <-- this doesn't 
     alert ('Pop up will now close'); 
     getCodeEZ(''+$(this).attr('lmgthing'),''+$(this).attr('ezprod'),''+$(this).attr('count')); 
     $.ajax({ 
       url: '/shopping_cart.php?osCsid=<?php echo $osCsid; ?>', 
       type: "POST", 
       data: 'sort=2a&amp;ezprod='+$(this).attr('ezprod'), 
       async:false, 
       error: function(xhr,err){}, 
       success: function(data){} 
      } 
     ) 
     //closePop(); 
    }); 
// more code below 

回答

0

我從來沒有發現,爲什麼調試器不會在本例中工作,但是polarblau給了一個很好的提示使用的console.log(),這是非常有益的,讓我見識到問題。

我發現一些奇怪的原因問題是,另一個JavaScript沒有使用AJAX調用頁面的其他部分上的結束標記。這是我的一個編碼問題。當添加結束標記使Safari運行完美時,它確實打破了IE,Chrome和Firefox! 所以我改變了一下編碼風格,並修復了我的其他問題。