二十、Bookmarklet
1、什麼是Bookmarklet?(What's a Bookmarklet?)
Q:什麼是Bookmarklet?
A:Bookmarklet是整個都被包含在超連結URL中的一小段JavaScript程式。(JavaScript URL就是這個樣子:<a href="javascript:the code goes here">。)多數瀏覽器允許使用者添加這些JavaScript URL書籤,就像添加其他超連結一樣。bookmarklet這個詞是由Steve Kanga創造的,他也自己開發了許多有用的bookmarklet。下面就是一個簡單的例子:後退bookmarklet。
Go-Back Bookmarklet
這個bookmarklet等價於瀏覽器的後退按鈕。點擊上面的標題可以預覽其效果。在標題上點擊右鍵,(根據瀏覽器)選擇添加書籤或者添加到收藏夾,就可以把它添加到你的書籤中。
2、Bookmarklets:瀏覽器支援(Bookmarklets: Browser Support)
Q:那些瀏覽器支援bookmarklets?
A:下列瀏覽器都支援bookmarklet:
Netscape Navigator 3.0 及更新版本
Internet Explorer 4.0 及更新版本
並不是所有的bookmarklet都可以在任何瀏覽器中正常工作。 這是因為不同瀏覽器對JavaScript的實現不同。要編寫一個跨瀏覽器的bookmarklet:
- 使用所有目標瀏覽器支援的JavaScript子集。
- 確保bookmarklet代碼不會太長。
3、Bookmarklet:最大長度(Bookmarklet: Maximum Length)
Q:Bookmarklet代碼的最大長度是多少?
A:Bookmarklet代碼的最大長度會根據瀏覽器的不同而不同。
實驗表明,最嚴格的需求是在IE6.x中。任何代碼長度達到510的bookmarklet在IE6中可能都沒有辦法正常工作。
4、計算機Bookmarklet(Calculator Bookmarklet)
Q:我是否可以在我的書籤中有一個計算機?
A:可以,這就是一個計算機bookmarklet。
點擊上面的連結,可以預覽其效果。要關閉計算機,只需點擊它上面的取消按鈕。要想把這個計算機添加到你的書籤中,在超連結上點擊右鍵,然後(根據瀏覽器不同)選擇增加書籤或者添加到收藏夾。
這個bookmarklet在NS4和MSIE4中測試通過。
5、時鐘Bookmarlet(Clock Bookmarklet)
Q:我可否在書籤中有一個時鐘?
A:可以,這就是一個時鐘bookmarklet。
這個是時鐘會顯示你瀏覽器的狀態列上。點擊上面的連結,預覽其效果。 要想把這個時鐘添加到你的書籤中,在超連結上點擊右鍵,然後(根據瀏覽器不同)選擇增加書籤或者添加到收藏夾。
這個bookmarklet在MSIE4+、Firefox1.5以及NS4+中測試通過。
6、JavaScript解譯器Bookmarklet(JavaScript Interpreter Bookmarklet)
Q:我是否可以建立一個包含JavaScript解譯器的bookmarklet?
A:當然可以。實際上,一些JS程式員發現JavaScript解譯器bookmarklet十分有用。不僅僅是因為它可以直接執行一行JavaScript代碼,它還可以在查看HTML頁面時檢查代碼中的任何變數的狀態。這裡就是一個JavaScript解譯器bookmarklet.
點擊上面的連結擷取JavaScript解譯器輸入框。
輸入JS變數名,檢查其狀態。
輸入一行代碼,執行它。
點擊輸入框上的取消按鈕退出解譯器輸入框。
要想把這個JavaScript解譯器添加到你的書籤中,在超連結上點擊右鍵,然後(根據瀏覽器不同)選擇增加書籤或者添加到收藏夾。
這個bookmarklet在NS4和MSIE4上測試通過。