1. Web Radio Buttons Layout

    研究了一下 radio buttons 該怎麼排比較好:

    個人結論:垂直排列會是比較好的作法,水平排列相對會有些問題:

    • 寬度限制,即使原本放得進去,翻譯之後就不一定了,如果要支持多國語言的話。
    • 數量一多的話,會較為雜亂,除非 space 間隔有設好。

    不過在一些情況下,水平排列還是 OK ...


  2. Linux Single Instance Lock

    要實作 single instance 有幾種方式:

    • file lock
    • inet socket lock
    • sem_open

    參照一些 daemon 的作法,感覺 file lock 較常見。inet socket bind 的作法有點麻煩,因爲還要找個 port 來 bind,所以不考慮,unix socket 大略等同於 file lock 的作法,不過步驟太煩雜,所以也不考慮,semaphore(sem_open)的作法看似比較好,因為 lock 是在 kernel 裡做管理,不用另外建 file,不過還是有一些問題在: How do I recover a ...



  3. JavaScript setTimeout focus

    stackoverflow 上可以看到幾個關於呼叫 focus() 沒有作用的問題:

    其中有幾個答案提供了這種解法:

    setTimeout(function() {
        $('#reply_message').focus();
    }, 0);
    

    看起來還滿詭異的,為啥用個 timeout function 就可以解了,查了一下,這篇感覺是正解: JS setTimeout延迟时间为0的详解

    JavaScript 引擎在执行 onkeypress 时,由于没有多线程的同步执行,不可能同时去处理刚创建元素的 focus 和 select 事件,由于这两个事件都不在队列中,在完成 onkeypress 后,JavaScript 引擎已经丢弃了这两个事件,正如你看到的例子 1 的情况。而在例子 ...

  4. JSON-C Resources

    找了一些 JSON-C 的使用範例:

    不過最上面兩個都有一個同樣的問題,就是多做了幾次不必要的 free,最後的 json_object_put 其實只要對最上頭的 root 做一次就好,這個 function 會將其中有參照的 object 都做 free ...


  5. C CGI Resources

    CGI 的 C 範例,大部分都是很簡單的,找不太到比較完整的資料,只找到 C++ 的,不過還是可以參考看看:http://www.tutorialspoint.com/cplusplus/cpp_web_programming.htm,裡頭有介紹到如何拿 GET, POST 的資料,還有一些常見的 header 欄位。

    另外找了一下,怎麼切 cookie 裡的字串比較好,不過也是沒找到比較正統的做法,只看到這種做法:http://www.gnu-darwin.orgwww.gnu-darwin.org/www001/src/ports/security/zxid/work/zxid-0.22/zxidcdc.c,直接用 strstr 找到想要的欄位這樣。


  6. jQuery Data Attribute

    最近開始用 data-* 的 attribute,後來看到 jQuery 也有 .data() 的 method 可以用,data() 可以存不只 String type 的資料,也可以存 Number or Boolean 之類的,不過用了之後才發現不是那麼好用,因為假如我把 data attribute 寫在 html 裡的話,ex:

    <div data-value="123"></div>
    

    我用 data('value') 取出來的值會是 Number type,也就是說,如果能轉的話,它就會自動幫你轉,在很多情況下,這不會是想要的行為,而且一旦不小心,就會造成不同型態比較的錯誤,所以就我自己來說,還是使用 attr('data-value ...


  7. CSS Instant Search Compatibility

    會看這個主要是很久之前看到的這篇文章: 使用 CSS:not 與 data-index 即時搜尋頁面

    最近剛好又用到,所以順便研究了一下 IE 的相容性問題,其中比較明顯的是 :not 這個 pseudo class 在 IE 上的相容性不太好: CSS3 :not Selector,IE 的支援從 9 才開始,不過我實際測 IE8 似乎也是可行,IE7 就真的不行了。

    本來想到的解法是先把所有的都 display:none,然後再篩選符合的去做對應的 display,ex: table or block,不過後來測試會死在把 css 塞進已存在的 style 這步,查了一下發現舊 IE 對 style ...


  8. Semantic UI dropdown restore default

    鬼打牆了很久,後來才找到一個方法可以做。

    // dropdown init:
    $('.ui.dropdown').dropdown();
    
    
    // 假如某個 dropdown 的 id 是 a
    $('.ui.dropdown').is('#a').dropdown('restore defaults');
    

    我有試圖用某個特定 id 做 dropdown init,再用這個 element 做 restore default,不過居然還是會有錯誤...。總之目前用這樣解。總覺得對 semantic UI 的怨念原來越深了...。

    Ref:


  9. [Review] Swift Essentials

    Swift Essentials

    Swift 是之前就還滿想學的程式語言,可是一直沒花時間研究,其實比較想做個東西,然後用 Swift 來做的,不過沒啥 idea,而且開發者帳號又要繳年費orz。

    之前也有試著找 Swift 的學習資源,不過覺得還是有點太分散,沒有一個完整的介紹。這本 Swift Essentials 是最近看到的一本介紹 Swift & iOS 開發的書,內容一開始先介紹了 Swift 的語法和使用,也有提供很多的語法範例,有些範例還會挑比較特殊的例子,相對的就會比較花時間理解,但是理解之後的幫助個人覺得比舉一些簡單的例子還要多就是,是說偶爾還是會有一些奇怪的範例,讓人搞不太懂為啥要這樣舉例就是囧。

    Swift 本身的語法都有一些其他程式語言的影子,不過又會有一些些微的不同,有時候不注意就會搞錯用法。像是 switch case 不用 break--ii-- 所回傳的值不同,然後還有類似 C 的 goto 用法,基本上這本書都會提到這些東西 ...


Page 2 / 22