2011-12-08 76 views
4

在Plone 4.1中使用jQuery SlickGrid插件並嘗試調整網格列的大小會跳過this jQuery 1.4.4 error,這已在更新版本中修復。Plone:升級jQuery

是否有可能升級由Plone使用的jQuery的核心版本,如果是的話,該怎麼做?

+0

只是嘗試更換有更新版本的jQuery庫?最新版本(1.7.1)位於這裏'https:// ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js' – OptimusCrime

+0

這是如何我正在問。 jQuery與Products.CMFPlone打包在一起;如果可能的話,我想替換或覆蓋該版本。 –

+0

哦,我沒有意識到這一點。但我想,如果你檢查包,你將能夠看到jQuery庫。這很可能在它自己的文件中。只需重新命名它,將1.7.1放在一個文件中並賦予它相同的名稱。它隨附jQuery工具:http://plone.org/documentation/manual/theme-reference/page/using-jquery-and-jquery-tools – OptimusCrime

回答

5

在Plone更新jQuery是不平凡的,因爲很多的腳本(包括JQueryTools的集成)依賴的jQuery 1.4。 JQuery是Products.CMFPlone的一部分。因此,更新可能會破壞功能。

關於jQuery和jQuery UI的Plone開發人員郵件列表正在進行討論。在Plone的開發

鏈接郵件列表:

+1

謝謝,但它實際上是第一個讓我意識到它可能不是微不足道的鏈接:)發佈Plone將jQuery加載爲jQ,是否有可能在需要時運行第二個版本作爲依賴項? –

+0

@MatthewTrevor:不,任何額外的jQuery庫會覆蓋任何以前加載的版本。如果你這樣做,我希望事情能夠被打破。 –

+1

@MatthewTrevor:JQuery $ .noConflict允許在同一頁面中擁有多個JQuery版本。示例:http://aspnetnova.blogspot.com/2009/12/jquery-multiple-version-of-jquery-in.html –

4

您可以非常輕鬆地重寫庫jquery.js(就像皮膚圖層中的任何其他文件一樣)。你必須做的是3個選項:

  1. 快1:去Zope管理界面 - > portal_skins中 - >自定義,並使用下拉菜單的右上角添加一個新的「文件」。 Id = jquery.js,File =你想要的jquery庫。

  2. 正確的一個:創建一個新包,register a new skin layer並把你的jquery庫放在那裏(如果需要的話,注意在「jquery.js」中重命名它)。

  3. 其他:override that file using z3c.jbot

不要像有人建議的那樣直接在文件系統中編輯文件:這是不必要的,這是一個非常糟糕的做法。

更多信息: