2015-02-06 48 views
2

我已經建立了一個使用AngularJS 1.2.9的網站,它通過CMS被添加到客戶的網站作爲一個塊在體內。我無法控制頁面的標題,他們使用的是舊版本的jQuery(1.6)。angularjs手動去除jquery自動加載

因爲默認情況下角使用jQuery的,如果它檢測到它被裝載在DOM我得到了在編譯鏈接功能等

我需要找到停止使用角的方式元素引用element not defined錯誤jQuery,而不是默認使用默認的jqLit​​e。我知道一個奇怪的請求,但是我沒有對頭文件腳本的任何控制,並且頁面爲所有選擇器代碼拋出錯誤。我在1.2版的AngularJS文檔中發現了這個1.2

Angular 1.2只能在jQuery 1.7.1或更高版本上運行。

所以我認爲這個錯誤是由舊的1.6版本的jQuery時所產生的加載

所以我的問題是:

有沒有辦法手動告訴AngularJS不要使用引導過程中的jQuery?

回答

1

不確定這是否適用於您,但它在過去爲我解決了類似的問題。

<script> 
    var backup = { 
    $: window.$, 
    jQuery: window.jQuery 
    }; 
    delete $; 
    delete jQuery; 
</script> 

<script src="path/to/Angular.js"></script> 

<script> 
    var $ = backup.$; 
    var jQuery = backup.jQuery; 
    delete backup; 
</script> 
+0

非常感謝TRGWII--會試試它並讓你知道。你能通過第三個腳本塊來說說我嗎?我假設它保存了jQuery的引用,然後在第一個塊中刪除它,然後在加載角度後再次添加它?如果是這樣 - 你怎麼知道在恢復之前角是否完成了自舉? – Tim 2015-02-06 16:21:16

+0

最後我重新添加了jquery到窗口,以防止其他東西進一步向下翻頁,以防它不清楚。 – TRGWII 2015-02-06 16:22:59

+0

好的 - 謝謝。試試吧。 – Tim 2015-02-06 16:25:15