Google Analytics Exception Tracking

其實在 Google Analytics 有隱藏版例外追蹤的功能,透過 Google Analytics 搜集網站前後端(或 App)的例外訊息後加以分析,以我這次的應用場景舉例,當使用者填寫表單並送出後,我會驗證使用者填寫的資訊是否有錯誤,如果有忘記填某個欄位,就會將錯誤訊息送回 GA,之後到 GA 檢視錯誤訊息的出現次數,某種程度上可以猜測是否介面設計不好導致使用者漏了該欄位。

繼續閱讀 Google Analytics Exception Tracking

分享到臉書的網址總是不如預期的呈現嗎? 來看看該如何幫網站做好 Facebook 優化吧!

相信對每位站長而言,Facebook 都已成為和 Google 同樣重要的流量來源,過去我們為了搜尋引擎做了許多 SEO 優化,但你知道嗎? 其實 Facebook 也有推出一份《網站與行動應用程式的分享最佳作法》闡述該如何調整網頁,讓你的網頁被使用者分享到 Facebook 時可以用最佳的方式呈現,在這篇文章中會分享我在個人部落格所做的嘗試。

繼續閱讀 分享到臉書的網址總是不如預期的呈現嗎? 來看看該如何幫網站做好 Facebook 優化吧!

How to Prevent JS Input onFocus Event Fire After Page onFocus

最近的工作是在網站中置入 Google Analytics 的使用者事件追蹤程式碼,我透過 HTML Event 的做法將程式碼掛在 Input 上面,只要使用者點擊特定的欄位、按鈕就會發送一筆記錄到 Google Analytics,這樣的做法沒有什麼問題,但我發現當使用者點擊 Input 欄位後如果切換到其他網頁(Chrome Tabs),當使用者在切換回我的頁面(Page onFocus)時,Input onFocus 事件卻被自動觸發了!

繼續閱讀 How to Prevent JS Input onFocus Event Fire After Page onFocus

Visual Studio Code – 貼上程式碼後自動整理縮排

從 Sublime Text 切換到 Visual Studio Code ( 以下簡稱 VS Code ) 的開發者想必都很懷念「Paste and Indent」的功能吧! 寫程式時不可免的需要複製貼上程式碼,貼上後縮排往往會亂掉,必須要手動在整理一次,而在 Sublime Text 有提供所謂的 Paste and Indent 功能可以讓你貼上的程式碼自動符合當前檔案的縮排方式,而 VS Code 也有類似功能,但原理不太一樣且需要到設定檔上開啟。

繼續閱讀 Visual Studio Code – 貼上程式碼後自動整理縮排

JavaScript 判斷變數是否等於 NaN

在 JavaScript 實在有太多奇怪的眉眉角角了,今天因為把字串轉數字用到 parseFloat,如果進去的參數無法轉成數字則會回應 NaN (Not a Number),我就寫了如下語法來判斷:

var score = parseFloat(prompt("Score:"));

if(score === NaN) {
    console.log("Not a Number");
} else {
    console.log(score);
}

這段程式碼乍看之下理所當然,就像 undefined、null 一樣可以直接相等運算,誰知道完全不如預期。

繼續閱讀 JavaScript 判斷變數是否等於 NaN

怕訪客複製你的文章嗎? 讓 JS 自動加上提醒文字或禁用複製!

在許多內容網站,都會有所謂的「複製時自動加上原文網址」機制,例如魔境歌詞網、知乎等等,更有的網站直接禁止使用者複製文字,要達到這些功能不困難,只需要幾行簡單的 JavaScript 語法,但需要思考網站是否真的需要加入這樣的功能,當正常訪客複製並轉貼文字到 Facebook,對網站真的造成損害了嗎? 此外如果真的要防止訪客複製文字,光憑著這些防君子不防小人的手法,到底是保護了利益還是讓網站變得更難使用?

繼續閱讀 怕訪客複製你的文章嗎? 讓 JS 自動加上提醒文字或禁用複製!

返校 Detention 第四章 斷掉的教室通過方法

在返校最終章的第一關,和靈魂碎片對話後可以交換身份,並需要穿過斷掉的教室抵達另一道門,這關不得不說真的有難度,如果你也跟我一樣卡關了,那就一塊來看看究竟該如何破關吧!

繼續閱讀 返校 Detention 第四章 斷掉的教室通過方法

返校 Detention 好壞結局攻略

建議第一次玩返校的朋友,就別再往下閱讀了。知名的電腦遊戲 返校 Detention 其實有兩種結局,如果你跟我一樣嘗試了兩次都還是壞結局,那不如來偷看一下祕技,了解該如何走向另一種結局吧! 在第四章 方芮欣 會和她的分身對話,那時分身會給你選項回答,其實無論你選擇哪個,遊戲都會繼續進行,差異只在於結束方式會有所不同。

繼續閱讀 返校 Detention 好壞結局攻略

JS 前端處理檔案上傳之預覽、大小、尺寸、格式

在上傳檔案時,最討厭的莫過於檔案上傳了 5 分鐘後才跟我說檔案過大或尺寸不正確!  在檔案上傳的驗證我們往往交給後端處理,導致檔案需要上傳後才能確認是否符合規定,特別是圖檔還有長寬比例的問題需要檢查,這些事情如果完全交給後端,就可能導致用戶體驗不佳,之前在新頭殼研究大頭貼上傳時,發現原來完全可以將這些事情交給前端處理,透過 JS 和 HTML5 API 做到檔案上傳的格式、大小(20MB)、尺寸(100×100) 檢查,甚至還可以做到預覽、前端切圖轉檔等等!

繼續閱讀 JS 前端處理檔案上傳之預覽、大小、尺寸、格式