2007年8月27日 星期一

jQuery 1.1.4 Release

jQuery 1.1.4 出來了 , 這將會是 1.1 系列的最後一版, 下一版本會跳到 1.2 了.
雖然被 jaceju 的 [JavaScript] jQuery 推出 1.1.4 版 搶了頭香 :D ,
阿土伯還是介紹一下, 並以一些比較技術部份簡介一下.
##CONTINUE##

Speed Improvements


在三個基本常用的操作上, ID selectors, tag name selectors, 和 each() 迴圈處理上, 速度有大幅的提昇.

Any Name jQuery


jQuery 在前面的版本, 只使用了二個 global variables , 就是 $ 和 jQuery, 現在 1.1.4 後, 您可以將這二個變數也換掉, 並和其它 3rd party 的 Library 整合,果如他在 Google 的演說一樣, (阿土伯這篇有介紹), 這版就加入了, 它帶來了二個好處:

1. 你可以在同一網頁使用不同版本的 jQuery:
這個功能, 或許猛一看, 你會認為為什麼有這樣的需求??
然而, 如果您的 Library 是運用在其它大量 3rd party library 的場合, 這個功能將會是很大的相容性保證.
如:
1. 阿土伯的 Blogger-Ext 它會運用在 blogspot.com 上的, 然而很多網誌作者已自行擴充了很多功能, 也可能使用其它版本的 jQuery, 這時這個功能將能保證不會有相容性問題.

2. 使用 Firefox 的使用者一定知道 Firefox 有很多的 extensions 可以使用, 包含 Greasemonkey 等, extensions 作者可能用到了 jQuery 來設計 js , 如果這時網頁也使用 jQuery, 這時這個功能將保證不會和網頁有相容問題.
2. 您可以將 jQuery 整合進其它 Namespace 中:
同上, 你更能將 jQuery 整進你 Library 的一部份, 一同發表, 這時, 您可以維護一份您自己使用的版本, 即使網頁作者換了別的版本 jQuery, 你的程式也不會發生相容性的問題.

也就是未來版本的 BloggerExt , 阿土伯可以將它整進 BloggerExt.jQueryBloggerExt.$ , 這樣 BloggerExt 將對任何網誌有最大的相容性以及最低的侵入性.

jQuery 在設計之初, 就有良好的設計模式以及未擴充任何 Native Objects , 這時就派上很大的用途.

// With the Dojo Toolkit
dojo.jquery = jQuery.noConflict(true);
dojo.jquery("#elem div").slideDown("slow");
// or with Yahoo UI
YAHOO.query = jQuery.noConflict(true);
YAHOO.query("span.hidden").removeClass("hidden");


.slice()


對於 jQuery 的 objects , 我們可以使用如同標準 Javascript arrays slice() function.
這個 Function 太優了, 它讓 jQuery 操作和 Javascript Array 有一致的操作介面.
所以, 理所當然的 .eq() , .lt() , .gt() 就被捨棄掉了. 因為可以用 .slice() 取代它.

Bug Fixes


53 個 1.1.3.1 版本的問題修正, 詳見 the bug tracker , 相當多的修正, 希望不會太快出現 1.1.4.1 :q

Local Variables:

一樣同他在 Google Tech Talk 上建議的良好習慣, 這版 1.1.4 便是將自己放在

(function(){
// your code
})();

中.

Blogger-ext2 使用方式


所以有使用 Blogger-ext2 的朋友, 只要將

<script type="text/javascript" src="http://blogger-ext2.googlecode.com/files/jquery-1.1.4.pack.js"></script>

即可完成 jQuery 的昇級動作..

10 則留言:

Nekki 提到...

大大,執行速度上會比1.1.31還快嗎?

Unknown 提到...

阿土伯你好,我升級成jQuery 1.1.4, 也有blogger_ext2-core-0.6.3.pack.js, 但繼續閱讀功能卻完全失效... All-in-one的版本也出現同樣的狀況,已經試了很多次,也改用過其他CSS模版,但不曉得問題究竟出在哪裡??懇請指點迷津阿....

http://seeing2sea.blogspot.com

Unknown 提到...

Dear nekki:
會的~ 因為阿土伯也大量用到那三個基本操作.

Unknown 提到...

Dear seeing2sea:
看了一下您的網誌, 您似乎沒有在您文章中加入 "繼續閱讀" 的標記語法..
您可以參考這篇說明:
http://racklin.blogspot.com/2007/01/blogger-jquery-way.html
或使用繼續閱讀懶人加強版:
http://cjhtech.blogspot.com/

Unknown 提到...

阿土伯你好~謝謝你的提醒!你的版本與cjh的版本我都試過多次;但這幾天兩者都失效了~ 現在就算使用cjh的,我仍要按照你的說明一一在文章中加入div id='fullpost'才可以,呈現一個詭異的情形... 不過非常感激你的幫忙 :D !!

吊子1/2 提到...

我想請教一下, 我這兩天開始使用您的 jQuery1.1.4 以及 bloger_ext2, 我是把這些程式碼裝在網頁元素裡,不過遇到一個問題,
就是我網頁元素的 blog 存檔 是使用和您一樣的樣式,並且也有設定讓他縮起來, 但不知為何我按下展開,並要開始展開月份內的文章列表時, 網頁會重讀, 重讀完這個元件又縮起來了....但是我看您的網頁並不會有此現象...不知道是哪裡的問題呢?還請賜教....謝謝

吊子1/2 提到...

我遇到另一個使用上得問題是, 我使用 0.7 版的時候, 我依照這裡的教學在某個地方貼上
// 支援 繼續閱讀功能 // true = 開 false = 關BloggerExtOptions.replace_continue_markup = true;// 動態展開時,是否使用動畫效果BloggerExtOptions.replace_continue_markup_animate= false;// 繼續閱讀功能顯示之說明文字// 可以是圖 img 或任何 html 語法BloggerExtOptions.continue_markup_expand_title = ' [+]繼續閱讀全文....';BloggerExtOptions.continue_markup_collapse_title = '[-]取消繼續閱讀全文....';

類似這種設定, 但好像會完全沒有反應....
一定要在網頁使用那個使用者自訂的面板去勾選才會有反應....
後來我換成 0.6.3, 也是依然不管怎麼設定都沒有反應...
請問一下我該如何設定呢?

我的部落格是
http://cchaha.blogspot.com
謝謝您

匿名 提到...

你好,我正在架網站發現了兩個問題..
第一個... 我的書籤出現了兩次
第二個.... 上面的navbar只會消常,指過去還是不會出現....

我是用 1.1.4 配上 0.6.3-core去做的

Unknown 提到...

這兩天發現當我的blogg使用ie7.0時都會先在入完全正常後的內容後,立刻出現無法開啟網際網路網站的警告訊息,之後便出現無法顯示網頁,但使用
fire fox一切正常,為什麼?
我的blog網址:http://u855010.blogspot.com


懇請賜教

Unknown 提到...

dear 歡樂魔術:
由於阿土伯沒裝 IE7, 誠如您所說的, 我用 Firefox 觀察您的網站正常..
會改變內容的 blogger-ext2 有 smile , 或是您在文章內容中, 有加入了第三方的 script src , 您可以先關閉試試看 :D