2013-09-20 55 views
0

我們用不同的頁面構建了一個網站,其中一些頁面具有其他頁面沒有的功能。例如:畫廊頁面使用jQuery Colorbox打開照片。因此,一些頁面加載了一些jQuery插件,而其他一些頁面則不加載(「關於我們」頁面不需要Colorbox插件)。有關如何以這種方式「網站化」網站的任何提示?

現在,客戶要求我們在頁面頂部放置一個持久音頻播放器。我們有兩種選擇:使用幀(太糟糕!)或使用Ajax調用更新內容,使用歷史API更新URL /瀏覽器歷史。

好的,我們將點擊事件附加到鏈接。該事件使用ajax請求新頁面,然後替換頁面內容。問題是:和js文件/ jQuery插件?當請求的頁面的js文件被加載時,$(document).ready();事件已經被解僱了。

此外,一些可能包含非外部JavaScript,像

<script type="text/javascript"> 
...some code here... 
</script> 

關於如何做到這一點的最好辦法任何提示? 謝謝!

+1

音頻網站上。噓。重寫整個網站以支持惱人的事情。雙噓。 –

+0

不確定要在那裏瞭解您的問題。鏈接被點擊了什麼?什麼是新的內容和地點?什麼不工作? – Lyth

+0

Lyth, 我指的鏈接是網站上的內部導航鏈接,作爲主菜單鏈接。新內容是鏈接指向的頁面的內容。 而且,cale_b,我同意你的看法,但客戶端要求它,所以... –

回答

0

外部JS文件應該在父文件中加載一次,以便在啓動ajax成功回調時滿足所有依賴關係。

例:

$.get('/someUrl',function(newHtml){ 

    //process the newly fetched html 
    $("#someParent").html(newHtml); 

    //apply whatever JQuery plugins you need at this point. 
}); 
相關問題