2010年3月26日星期五

Firefox Extension - Hide/Remove HTML Element

現在Browser之中,Firefox和Chrome之間,應該是最難選擇的。但我到目前為止,暫時都未考慮全面轉用那一個,依然都是一般用就Firefox,較需要效能的就Chrome(例如看Google Map Street View)
原因是我用慣的Firefox Extension,Chrome始終沒有,而且Firefox的確有很多很"神"的Extension,這次就介紹兩個Extension。

我估大部份人Firefox上,Block Javascript會用NoScript,Block廣告就用AdBlock Plus吧。
但網頁上,AdBlock Plus雖然可以Block廣告而且騰出空間,但如果該廣告不是Image或者Swf,只是一般文字,而且是屬於網站同一Domain,AdBlock就起不了作用。例如蘋果日報網站上就是了,很多廣告都是網站本身的,不是第三方廣告公司的JS建立的。

另一方面,有時網頁的Layout未必可以滿足所有人,想Hidden某些東西的話,雖然可以自己寫Userscript去把Element的Display:None,但很不方便,以下兩個Extension就可以做到這個功能。

Adblock Plus: Element Hiding Helper
這可以算是AdBlock Plus的Plug-in,起網頁上選擇Table/Div/Span等等就可以加進AdBlock的Rules之中。



如果你沒有用AdBlock,可以試試這個
Remove It Permanently
這個官方簡稱RIP(...)的東西其實同Adblock Plus: Element Hiding Helper操作上都是一樣,就是選擇Element -> Hide,但我試用過後,覺得這個比較易使用,文字上表達得較直接。



暫時我兩個同時使用,以後再不怕上中國大陸的網站了.....

Adblock Plus: Element Hiding Helper
https://addons.mozilla.org/zh-TW/firefox/addon/4364

Remove It Permanently
https://addons.mozilla.org/zh-TW/firefox/addon/521

2010年3月18日星期四

XAMPP + Tomcat Add-on連接MySQL方法

今天做功課要用XAMPP + Tomcat Add-On連接MySQL,但卻連不上。

原來XAMPP的Tomcat Add-On不包含MySQL Lib

解決方法就是上MySQL網站,Download Connector/J,Unzip後放mysql-connector-java-5.1.12-bin.jar 去"C:\xampplite\tomcat\lib\" 就可以了。

2010年3月15日星期一

新Open Source License - WTFPL

近日至知道原來有一隻 Open Source License 叫 WTFPL,全名為Do What The Fuck You Want To Public License ....
雖然好似是惡搞的東西,但的確在國外開發者之間已經有"認受性"。

OpenSource License 有很多種,限制各有不同,有時一些Opensource小品制作,根本不用套上任何License,更不想花時間去搞份license.txt,但同時又想讓開發者知道可以自由修改發佈,好像我的WordPress插件一樣,諗深一層又的確有咁既需要。

只需簡單地套上WTFPL,其他人就知道這份Source Code可以任意修改/商用/發佈以及轉售都可以。

WTFPL官網
WTFPL@Wikipedia
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004

Copyright (C) 2004 Sam Hocevar

Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.

DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. You just DO WHAT THE FUCK YOU WANT TO.

JavaScript Stuff

Detecting ‘Idle’ and ‘Away’ Timeouts in Javascript
Code & Demo @ bedroomlan

10 Small Things You May Not Know About Javascript

JavaScript 奇怪錯誤
Top 10 Things that JavaScript Got Wrong
What the Fuck JavaScript

2010年3月14日星期日

Javascript - Array difference

以下Function用途是比對兩段Array,找出不同的元素。
function diffArrays(arr1, arr2, returnUnion) {
    var ret = [];
    var test = {};
    var bigArray, smallArray, key;
    if (arr1.length >= arr2.length) {
        bigArray = arr1;
        smallArray = arr2;
    } else {
        bigArray = arr2;
        smallArray = arr1;
    }
    for (var i = 0; i < bigArray.length; i++) {
        key = bigArray[i];
        test[key] = true;
    }
    if (!returnUnion) {
        //diffing
        for (var i = 0; i < smallArray.length; i++) {
            key = smallArray[i];
            if (!test[key]) {
                test[key] = null;
            }
        }
    } else {
        //union
        for (var i = 0; i < smallArray.length; i++) {
            key = smallArray[i];
            if (!test[key]) {
                test[key] = true;
            }
        }
    }
    for (var i in test) {
        ret.push(i);
    }
    return ret;
} 
array1 = "test1", "test2", "test3", "test4", "test7"
array2 = "test1", "test2", "test3", "test4", "test5", "test6"
diffArray = diffArrays(array1, array2);
//returns ["test5","test6","test7"]
 
diffArray = diffArrays(array1, array2, true);
//returns ["test1", "test2","test3","test4", "test5", "test6","test7"]

深入了解Google Map Street View如何拍攝



近期Google Map在香港突然興起來,當然因為是香港版Street View,應該很多人都驚嘆Google Map的技術,想知道是如何制作Street View的。

簡單來說,
架車一秒影3張 x 9 (8個水平方向 + 1向天影魚眼相)
車內除了司機全是HDD
相機下有3部Detector, 可以測量同建設物之間距離
仲有單車版, 雪地版, 等等版本~

詳情可分別瀏覽以下網址
一探Google Maps街景地圖與Google街景車秘辛
Google Street View不但能看街景還能看雪山
揭開Google街景車的秘密

2010年3月2日星期二

Fixed Wolrd Wide Web Publishing Service Error:1068

我其中一台VPS Server是用Windows Server 2003 Enterprise R2 SP2版,前天遇到一個嚴重問題就是IIS 6.0完全死亡。
起初我完全找不到原因,後來Format過後,行完Windows Update後,問題又重現,所以我肯定是Windows Update後出現問題。
死亡症狀是以下的Service都不能啟動:
- Http SSL
- Server Service
- WorkStation Service
- World Wide Web Publishing Services
- IIS 6 Application Pool

而錯誤訊息是
中文: 無法啟動本機電腦的World Wide Web Publishing Service 服務 錯誤1068: 相依服務或群組無法啟動
英文: Could not start the World Wide Web Publishing Service service on Local computer. Error 1068: The dependency service or group failed to start



找尋各Update Items後,發現就是這個KB973917殺死我的IIS,Google後果然有千千萬萬既人已經中招

因為到現在MS依然把它放在高優先權的更新。

解決方法有兩個
1. 去Control Panel ->新增移除程式->uninstall KB973917
2. 重新安裝一次SP2
而我既選擇係不安裝KB973917...

事實上Microsoft 技術支援都有說明 : Internet Information Services 6.0 may not function correctly after installing KB973917