很久沒更新了...
其實本來就是想拿 Blogger 來記錄一些心得...
後來發現 使用 Google Sites 似乎比較符合我的需求
所以之後寫的東西都搬到 http://sites.google.com/site/summerwxy/去了
至於這邊呢 等我想到用途的時候 還是會繼續寫的...
其實本來就是想拿 Blogger 來記錄一些心得...
後來發現 使用 Google Sites 似乎比較符合我的需求
所以之後寫的東西都搬到 http://sites.google.com/site/summerwxy/去了
至於這邊呢 等我想到用途的時候 還是會繼續寫的...
Posted by Unknown at 10:50
Link Within a YouTube Video 又提到了, 現在的 YouTube 網址可以接受參數, 讓影片可以從某個時間點開始播放. 只需要在網址的最後加上 #t=XXmYYs, XX 是分鐘, YY 是秒數.
http://www.youtube.com/watch?v=UfDr9eD7wKY#t=1m39s
Embed a Part of a YouTube Video 中提到, 有些時候在 YouTube 的影片, 只需要比較有趣的中間段落, 這時候有個方法可以使用. YouTube 撥放器有一個參數可以指定影片要跳過的秒數. 只需加上 &start=[秒數] 到 Embed code 的兩個 URLs 後面就可以了.
&start=99 的部分Blackbird 是一個蠻容易使用的 logging 工具.
首先在網頁上放入 .js 與 .css 這兩個檔案:
Posted by Unknown at 14:48
Labels: javascript
因為朋友的公司會監控 MSN, 而且傳送/接收網址都會被擋掉, 所以作了一個簡單的 Bookmarklet 用來偽裝網址. 作品在這邊: (我只有測試過 Firefox 3.0 跟 IE 6)
網址偽裝
另外還發現一件事情, IE 6 的 Bookmarklet 有大小上的限制, 我算了一下長度大概是 504 bytes, 所以內容稍微多一點的時候, 就必須做成 .js 檔案來處理, 否則放到 bookmark 的時候會沒有反應, 為了找這個原因, 還花了一點時間. 而 Firefox 上面則沒有這個限制.
Posted by Unknown at 10:40
Labels: bookmarklet, javascript
找 ip to location 解決方法的時候, 看到了這篇: APIs for Finding Location
原來 Google 提供了兩種找使用者位置的 APIs, 第一種是比較簡單的使用 ip address 去換. 使用的是 Google AJAX API 裡面多了一個 google.loader.ClientLocation 可以獲得位置的資料.
第二種比較精確的則是使用 Gears 0.4 之後的 Geolocation API 可以透過 ip/GPS 等方式來取得, 不過缺點是要安裝 Google Gears 目前並非每種瀏覽器都可以使用.
google.loader.ClientLocation 與 Google Maps 使用範例:
Posted by Unknown at 11:59
Labels: google code, google maps, javascript
今天跟朋友聊到了 Mobile01 的時候, 突然想起自從 2007 年改版之後, 就一直沒有提供 RSS feed 了. 稍微找了一下站內討論區, 看看站方有沒有計畫要加回來, 然後在一篇公告的討論之中, 看到了這一篇.
回文裡面提到了 Feed43 這個服務, 這個服務可以將任意的 HTML page, 轉成 RSS feed.
只需要簡單的四個步驟:
最近在寫 user script 的時候不小心發現, 原來 GM_xmlhttpRequest 可以拿來處理 corss-domain 的 request.
不過有個地方需要特別注意一下, 取得其他 domain 的 request 之後, 想使用 DOM 來處理, 在使用 innerHTML 的同時, 瀏覽器會向當時畫面的主機請求 href="this/is/a/link" 或是 src="this/is/a/file.jpg"
等資料, 所以要特別注意, 必須要先經過處理才可以使用 innerHTML.
另外因為 GM_xmlhttpRequest 取回 request 預設是使用 UTF-8 來處理的, 如果取回的資料是其他語系的話, 可以使用 overrideMimeType 來處理, 這樣文字就可以正常顯示了.
Posted by Unknown at 15:54
Labels: greasemonkey, javascript
用法: cht=s
散點圖使用不同的方式來處理多組資料. 散點圖只允許顯示一組資料在圖表上. 儘管是使用了三組資料來指定每個點的 x 位置, y 位置, 與選用的大小.
cht=s
需提供兩組資料: 第一組指定 x 座標, 第二組指定 y 座標.
預設的形狀是小圓點. 可以使用 chm 參數來修改形狀, 參考 Shape markers.
顏色預設是藍色. 可參考 Colors 來修改顏色.
本範例中, 你會注意到每個資料有不同的大小. 達到這樣效果, 只需要指定第三組資料.
cht=s
Posted by Unknown at 11:46
Labels: google code
用法: cht=v
只支援一組資料:
cht=vcht=v
chd=t:100,80,60,30,30,30,10Posted by Unknown at 11:25
Labels: google code
用法: cht=<pie chart type>
其中 <pie chart type> 是 p, p3:
注意: Google Chart API 會依照指定的長寬(chs)來計算圓周半徑. 如果圖表內包含了標籤, 最好是將寬度設定為高度的兩倍.cht=pchl 來指定標籤, 詳細請參考 Pie chart labels.cht=p
chs=200x100cht=p3cht=p3
chs=250x100Posted by Unknown at 11:06
Labels: google code
用法: cht=<bar chart type>
其中 <bar chart type> 可以是 bhs, bhg, bvs 或 bvg:
cht=bhs | cht=bvscht=bhg | cht=bvgchbhbhs 或 bhg 或是豎的 bvs 或 bvg, 圖形大小都是決定於 chs 參數. 但是當尺寸指定太小時圖表就會被剪裁掉.
chbh=
<bar width in pixels>,
<optional space between bars in a group>,
<optional space between groups>
注意: 假如沒有提供第三個參數, 則預設為每組之間空格的一半.
chbh 所以圖形有被剪裁掉一些chbh=10Posted by Unknown at 10:37
Labels: google code
用法: cht=ls
波型圖的參數跟折線圖一樣. 唯一不同的是波型圖預設不顯示出軸線.
另外參考 Multiple axis labels 你也可以自己替圖表加上軸線.
Posted by Unknown at 10:33
Labels: google code
用法: cht=<line chart type>
其中 <line chart type> 可以是 lc 或 lxy:
lc: 有多少組資料就會繪製成多少條線lxy: 每條線需要提供一對資料cht=lccht=lxy-1. 而 Simple encoding 就是 _, Extended 就是 __ 帶定義.chm 指定資料點的形狀, 請參考 Shape markers 章節.Posted by Unknown at 10:23
Labels: google code
jQuery & Greasemonkey 提供了一小段 Javascript code, 如何在 Greasemonkey 裡面使用 jQuery.
Code:
Posted by Unknown at 15:58
Labels: greasemonkey, javascript, jquery, snipcode
注意: 第一個額外傳遞參數的語法, 在 IE 上無法執行.
window.setTimeout 時, 都是寫成這樣
Posted by Unknown at 09:55
Labels: javascript
Core JavaScript 1.5 Reference:Global Objects:Array:splice
改變陣列的內容, 可以在移除舊元素的同時, 加進新的元素.
splice 的作用就是單純的將陣列中的元素移除掉.
splice 方法會回傳一個陣列, 裡面包含了被移除的元素. 就算只有一個元素被移除, 回傳的就是包含一個元素的陣列.Posted by Unknown at 08:54
Labels: javascript
目前可用的圖表有:
Posted by Unknown at 14:09
Labels: google code
在產生圖表之前必須將資料進行編碼, 轉成 Chart API 認識的格式. 使用下列其中一種格式:
A 代表 0, B 代表 1, 一直到 9 代表 61, 提供 62 個不同數值的轉換.AA 代表 0, AB 代表 1, 一直到兩個句號(..) 代表 4095, 提供了 4,096 個不同的數值轉換.Note: 你可能想要計畫性的將資料進行 Simple/Extended 編碼. 可參考 JavaScript snippet for encoding data 這篇說明. 同樣的, 也有好幾位 Chart Group 成員貢獻 API - 可以在 Group 裡面慢慢找或是直接參考 Useful links to API libraries 這個文章.
chd=t:<chart data string><chart data string> 是由正數浮點數從 0.0 到 100.0, 還有一個負數 -1, 以及分隔符號 | 所組成的.0.0 = 0, 1.0 = 1, 一直到 100.0 = 100-1 來指定一個無效的數值| 符號分隔開來.chd=t:10.0,58.0,95.0|30.0,8.0,63.0注意: 在 text encoding 中, 會以資料裡最大的值, 將資料轉成百分比, 來當比例.
chd=t:<chart data string>
chds=<data set 1 minimum value>,<data set 1 maximum value>,<data set n minimum value>,<data set n maximum value><chart data string> 由正負浮點數組合而成<data set 1 minimum value> 是第一組資料的下限.<data set 1 maximum value> 是第一組資料的上限, 指定 100 時可省略.<data set n minimum value> 是第 n 組資料的下限.<data set n maximum value> 是第 n 組資料的上限, 指定 100 時可省略.| 分隔開來chd=t:30,-60,50,120,80&chds=-80,140chd=s:<chart data string><chart data string> 包含了: A ~ Z, a ~ z, 0 ~ 9, 底線(_), 與當分隔符號的逗號(,).A = 0, B = 1 一直到 Z = 25a = 26, b = 27 一直到 z = 510) = 52 一直到 9 = 61_) 代表指定一個無效的數值,)將每組資料分隔開來chd=s:ATb19,Mn5tz 其中的第一組資料裡面, A 代表 0, T 代表 19, b 代表 27, l 代表 53, 9 代表 61.注意: 更詳細的介紹請參考 Simple encoding character values
chd=e:<chart data string><chart data string>A ~ Z, a ~ z, 0 ~ 9, 連字號(-), 句號(.), 底線(_), 還有當分隔符號的逗號(,).AA = 0, AZ = 25, Aa = 26, Az = 51, A0 = 52, A9 = 61, A- = 62, A. = 63BA = 64, BZ = 89, Ba = 90, Bz = 115, B0 = 116, B9 = 125, B- = 126, B. = 127.A = 4032, .Z = 4057, .a = 4058, .z = 4083, .0 = 4084, .9 = 4093, .- = 4094, .. = 4095.__)來指定無效的數值,)將每組資料分隔開來注意: 更詳細的介紹請參考 Extended encoding character values
_).maxValue 設定的陣列裡最大的數字稍微大一點, 則在產生圖表時, 最大值跟圖表上方就會保留一小段空間.
Posted by Unknown at 21:57
Labels: google code