2010-10-09 87 views
0

我是一個新手,所以如果這個腳本是基本的,請原諒。我試圖使用jQuery的.load()函數加載我已經構建的表達式引擎網站上的事件日曆的下一個或上一個月。下面的腳本在Chrome,Safari瀏覽器,IE和Firefox 4測試版的工作,但在FF 3.6.10失敗:jQuery .load()函數在firefox中失敗3.6.10

$('th a.right, th a.left, th a.center').click(function() { 
     var navMonth = $(this).attr("title"); 
     $('#calendar').html('<p style="padding: 102px 120px;"><img src="http://dashboardco-op.org/images/infra/ajax-loader.gif" /></p>'); 
     $('#calendar').load(navMonth); 

}); 

而這裏的HTML:

   <th colspan="1"><a id="mc_prev_month" class="icon left" title="{path='live/calendar'}{prev_month format="%Y/%m"}/">&larr;</a></th> 
       <th colspan="5"><a class="center" title="{path='live/calendar'}{next_month format="%Y/%m"}/">{month format="%F %Y"}</a></th> 
       <th colspan="1"><a id="mc_next_month" class="icon right" title="{path='live/calendar'}{next_month format="%Y/%m"}/">&rarr;</a></th> 

我使用了「 title'屬性,因爲.load()不會覆蓋'href' - 因此頁面會在新頁面中加載而不是異步加載。

謝謝。

+3

你嘗試過使用Firebug並檢查網絡面板嗎? – Mottie 2010-10-09 05:23:03

+1

你的意思是失敗?什麼都不做?它拋出什麼錯誤? – 2010-10-09 15:23:56

回答

0

不知道爲什麼它可能有一個特定的瀏覽器的問題,但我認爲有一個稍微乾淨的方式來做你想做的事情。看看jQuery中的這個函數取消打開一個新的頁面錨點點擊:preventDefault()

有了這個,你可以把路徑放在href標籤中,如果沒有其他原因可能會使標記看起來乾淨。除此之外,唯一想到的其他事情可能是錨點需求href屬性(我不認爲是這種情況?)或者也許FF 3.6處理title屬性的方式不同?

+0

或簡單'返回false;'在點擊處理程序。 +1使用'href'屬性,因爲它有助於優雅的降級。 – Phil 2010-11-03 04:37:55

+0

d'oh! @Phil Brown迴歸虛假;絕對是去那裏的路,不需要過度複雜 – 2bsharpdev 2010-11-03 04:50:22