Category: javascript

為了歡度jQuery四歲生日(jQuery由John Resig 於 2006/01/14 在 BarCamp NYC 首次發表[註]),jQuery開發團隊在2010/01/14釋出了jQuery 1.4版。 簡單整理一下我所理解的1.4改版重點: 大量重構常用的函數,降低程式複雜度(...

手上有個需求,要掌握網頁裡所有連結被點擊的狀況。 對jQuery來說這是小菜一碟,利用$("a").live("click", function() { ... });就可在使用者點擊連結時加入自訂邏輯。不過,有挑戰性的部分在於網頁中可能穿插IFrame內嵌其他網頁,原本這個手腳只想動在Maste...

專案裡有個網頁列印的需求,在一份清單中,每個項目以Table方式呈現,而列印時不希望項目Table跨頁。以下是我搞出來的解決方案: <style type="text/css">.cPrintOnly { page-break-before: always; d...

稍早發表利用JScript eval()函數提供高彈性的自訂條件運算式一文,隨即獲得網友ChrisTorng迴響,提出了關於eval運算式中可能被放入大量迴圈邏輯的問題以及Build JScript.NET DLL滅少CodeDom及Reflection使用的建議。(感謝!!) 關於第一點,的...

最近在嘗試將一個功能強大的jQuery Plugin【jqGrid】整到專案裡,它的功能與彈性讓人印象深刻(不過要上手得花點時間摸索),大家可以直接看線上展示,應該就能感受其威力。 jqGrid有個貼心的設計--將功能模組化。各模組的程式分散在多個js檔,有用到才需要載入,避免Client端載入肥...

之前寫過文章談Javascript字串的特殊字元處理,今天在研究如何自己DIY處理簡單的JSON轉換(網站非.NET 3.5,沒法用內建的JavaScriptSerializer;也不想引用JSON.NET增加部署複雜性),無意中找到完整的特殊字元轉換規格,就再寫了一次更完整的轉換函數。 由於...

在James Padolsey的Blog看到這個,Nicholad Zakas,Yahoo首頁的主要前端工程師、YUI作者之一、也是多本Javascript書籍的作者,前些時候在Google演講: "Speed Up Your JavaScript"(YouTube上有全程錄影) 身為Yaho...

在上一篇強化程式範例複製功能裡,其實迴避了一個問題: 使用者真正想要的操作是點一下就搞定呀! "點一下->Ctrl-A->Ctrl-C"的操作步驟肯定會被嫌棄。不過,據我先前的了解,存取剪貼簿的Javascript存在跨瀏覽器的問題,除了IE內建支援外,其他瀏覽器等靠...

前陣子我分享了關於JS效能調校的經驗,IE8 Dev Tool是個很方便的工具。不過,不是每種瀏覽器上都有Profiler可用,若想在不同瀏覽器上都能精確地量測某段操作的時間長短,寫一個Javascript版的Stopwatch計時碼錶應是最直接有效的方法。所以我寫了一個JS計時碼錶---dar...

網頁在FF下不正常,搞了半天才發現問題出在我使用val()指定Textarea的內容,畫面顯示看來一切OK,但經過clone()後,內容值卻消失了。 我整理出以下的範例做測試: (可用Mini jQuery Lab直接執行) $("<div id='x1'><textarea ...

把一筆錢依特定的比例分給幾個人是我工作上常要處理的需求。由於金額必須四捨五入到元或分,因此常需面對除不盡的錢要設法攤掉的問題。例如100元平分給三個人,每人33元後,最後的1元要發給三人之一的幸運兒,變成一人34, 兩人33的分配結果。 以前年紀小不懂事,很直覺的想法是先用100*1/3四捨五...

我寫了一小段程式讓一群Checkbox具有單選的限制。理論上,單選改用Radio就好了,但在我接觸的一些需求中,使用者就是偏好方格打勾的呈現方式,比較貼近傳統紙張表單設計。 程式碼挺簡單的,利用class將幾個Checkbox歸成同一群,當其中任何一個被點選時,就將整群的Checkbox先全設為未...

宅神朱學恆Blog的文章除了一向犀利大膽外,極其豪邁的全尺寸圖檔(尤其是美女正妹圖)更是一大特色。不過,圖檔實在是太大了,即便用我的1280*1024螢幕檢視,若不捲動網頁,往往只能窺得正妹照片的一小角,必須由小得可憐的可視範圍推測那一大塊膚色到底是美腿還是伴隨入鏡狗狗的後腳? 頗有瞎子摸象之趣...

正在趕工寫程式,沒想到又跟Bug耗上了大半天… (好像每次都這樣) 有段程式用了JSON2.js處理資料欄位的編修,原本執行良好,今天測試卻發現如果<input type='text'>的value是空字串,傳回結果會變成null四個字。 原本以為這是JSON2.js將空字串視為...