[程式][ywidget]筆記
標題[程式][ywidget]筆記
時間北極光 (2009/12/11 Fri 21:09:28)
資料來源參考
http://manual.widgets.yahoo.com/
1. JS Object 怎麼來 (Object Names)
每個 xml element 可以取一個 name , 必須是 unique ,
會同時產生一個同名的 JS Object .
2.css可以透過 xml 設定 , 跟html一樣是走 style標籤 ,
也可以透過 js object 來設定 (一樣是找該object的 style成員.)
3.事件處理 (Event Handlers)
event handler:
跟html中的寫法很像 ,
onMouseDown=function(e){
}
4.5版以前不會傳 event param 給 function ,
需要透過 system.event這個 global variable去存取 .
(跟 ie 的 window.event 很像)
4.資料的儲存
Widget Preferences
可用來儲存小量的資料 , windows 系列會存在註冊檔 (regedit)
HKEY_CURRENT_USER\Software\Yahoo\WidgetEngine.
可以預先設定在xml檔中 , 如
<preference name="warpCoreIntermix" hidden="true" value="1"/>
<preference name="shieldFrequency" hidden="true" value="0.7"/>
再透過 JS 去存取跟設定
ex.
preferences.shieldFrequency.value = "0.9";
print(preferences.shieldFrequency.value);
preferences.shieldFrequency.value = "0.9";
print(preferences.shieldFrequency.value);
網站上建議是如果資料量大的話,則建議採用 sqlite 。
5.Widget Dock
這東西就是在widget清單中那個 75*75的小icon~
6.一個widget 的結構
myWidgetName.widget //folder required
Contents //folder required
widget.xml //recommended
myWidgetName.kon //take your name required
Resources //folder recommended
<any files used by the Widget>
7.widget 打包 (widget packaging)
有兩種 , 官網建議是 flat板比較好 ,zip板有比較多效能問題.
zip板就直接用壓縮工具打包就是 , 注意根目錄應該是xxx.widget就是了
flat板 採用 Widget Converter Widget 來做壓縮 ,
可從 http://widgets.yahoo.com/workshop 下載 .
8.取識別碼 using uuid (Giving Your Widget an Identifier)
<identifier>425b0c3e-fd99-11db-8314-0800200c9a66</identifier>
UUID可以從很多工具中取得 , 官網建議是下面這個
http://www.famkruithof.net/uuid/uuidgen
識別碼的好處是可以讓系統辨認你的程式 , 就算你更改名字 .
9.about selectors (The DOM)
跟html一樣是有個 document 可以用 ,
所以 document.getElementById()
document.getElementsByTagName() 都可以用 .
另外還可以透過 window.evaluate( strXPath ) , 使用 XPath 來做選擇.
--
▄▅▆▇███▇▆▅▄▃ ╰┼╯─╮ ╮
◥███████████◣ ╰┼╯=│=│
◥██████───────◣ *.╯ ╯ ╯ の物語.*
◥███████──────◣~◢◣ ◢◣
◥██████───────◤ ◥◤* 空白的世界.翼 *◥◤
◥██▁▂▃▄▅▆▇███▆▅▄▃▂▂~telnet://tony1223.no-ip.info
--
╭═ Origin ─═ 北極光 aurora.twbbs.org κλμ ─╣
╚─ Author ═─ 61-224-236-226.dynamic.hi
Comments
No approved comments yet.