2011-08-22 50 views
0

我正在用javascript做一個噩夢,希望有人可以幫忙。我使用的Userforms模塊,我也添加了我自己的jQuery代碼,以便點擊時文本字段的默認值消失,如果失去焦點並且爲空,則會重新顯示。Silverstripe Userforms原型和jQuery衝突

我也想實現在同一頁上的幻燈片。由於IE8的兼容性問題,我不能使用jQuery來做這件事(你不喜歡微軟!)。使用Prototype代替,我得到大量的隨機錯誤,我只能猜測是由於我包含prototype.js兩次,一次是在頁面頂部的幻燈片顯示以及一次在底部的以某種方式由用戶表單注入的頁面。如果我刪除頂部的我的包含,我的幻燈片會產生一個缺少原型lib錯誤。

我試圖用jQuery.NoConflict以防止對$令牌的多個掛鉤的問題,但我剛剛結束了與JavaScript的錯誤和衝突的一個爛攤子。

有什麼辦法來控制用戶窗體如何使用/包括了JavaScript包括(jQuery和原型)?

任何幫助或建議將不勝感激! 很多謝謝

回答

0
  • 如果您正確使用jQuery noConflict,那麼原型應該沒有任何問題。
  • 包括Prototype兩次調用問題。
  • 如果你的幻燈片要求JS被列入頭(氣餒由於性能原因),您可以強制SilverStripe加載JS的頭部。包括在你的下面的init()函數:

    Requirements::set_write_js_to_body(false); 
    
  • 如果不解決你的問題,你需要兩個不同版本的原型?如果是這樣,我會嘗試解決問題或切換幻燈片插件 - 應該有大量的替代品。包括你的第3個JS庫聽起來像一個重大的矯枉過正 - 想想加載時間...