只要是常常寫網頁的人經常會發現有些頁面在 IE 可以正常瀏覽但是在 FF 底下卻會有偏移的情況。
會發生這個原因其實不是 FF 的錯,而是大部份台灣的網頁設計師都以 IE 為主軸,
因此常常只要在IE下能夠看到正確的內容就好。囧...
最近在做下拉式選單的時候,為了要讓 IE 與 FF 皆能相容的情況下,卻看到兩者編排時有些許不同,
查找了一下資料發現兩者在區塊的呈現方式會有相差 2 pixel 的誤差,詳細資料請點我
2009年3月31日 星期二
2009年3月29日 星期日
SQL查詢時的執行順序
前陣子公司常常為了資料庫煩惱不已,因為查詢的時間實在是太久了!
就好比開個網頁要等個幾十秒難以讓人忍受。
而會發生這個問題即來自於 table 的 join 效率不彰,大家都知道當兩個 TABLE(A、B) 要 JOIN 時,
其 JOIN 的總數量是 A的總筆數 乘以 B的總筆數,
當 JOIN 時如果兩個 TABLE 皆以數千萬筆資料來擷取所需的資料是多麼可怕的一件事。
就好比開個網頁要等個幾十秒難以讓人忍受。
而會發生這個問題即來自於 table 的 join 效率不彰,大家都知道當兩個 TABLE(A、B) 要 JOIN 時,
其 JOIN 的總數量是 A的總筆數 乘以 B的總筆數,
當 JOIN 時如果兩個 TABLE 皆以數千萬筆資料來擷取所需的資料是多麼可怕的一件事。
2009年3月19日 星期四
IE/FF瀏覽器偵測onMouseDown事件的差異
最近實作踩地雷時,由於踩地雷有一個功能是九宮格中如果所有的炸彈都猜到了,
就可以滑鼠左右鍵同時按下把周圍的格子都打開,沒想到當我用onMousedown偵測時卻發現,
這個event可以偵測到點擊的按鍵是左鍵、右鍵還是滾輪,但是在IE與FF下卻會觸發不同次數。
實際結果大家可以測試下列範例即可得知。
就可以滑鼠左右鍵同時按下把周圍的格子都打開,沒想到當我用onMousedown偵測時卻發現,
這個event可以偵測到點擊的按鍵是左鍵、右鍵還是滾輪,但是在IE與FF下卻會觸發不同次數。
實際結果大家可以測試下列範例即可得知。
2009年3月17日 星期二
透過PHP產出EXCEL
相信有許多人都曾經需要產EXCEL的檔案,包括我也不例外。
以前曾經試著自己用COM連結EXCEL,許多程式語言也有提供此方法連接,
然而卻發現這個方法並沒有想像中好用,主因來自於SERVER與EXCEL之間的溝通非常的耗時,
導致效能不彰,所以找了一下相關的文獻是否有好的方法能夠產出,
最後找到Creating excel files through PHP這篇文章,
提到其實可以運用HEADER傳送MIME為EXCEL格式並且設定其為附加檔案,即會出現一個下載視窗。
而此方法是運用EXCEL剖析HTML表格以得到最終的結果,因此當轉出前需確認轉出的內容已為表格形式。
以前曾經試著自己用COM連結EXCEL,許多程式語言也有提供此方法連接,
然而卻發現這個方法並沒有想像中好用,主因來自於SERVER與EXCEL之間的溝通非常的耗時,
導致效能不彰,所以找了一下相關的文獻是否有好的方法能夠產出,
最後找到Creating excel files through PHP這篇文章,
提到其實可以運用HEADER傳送MIME為EXCEL格式並且設定其為附加檔案,即會出現一個下載視窗。
而此方法是運用EXCEL剖析HTML表格以得到最終的結果,因此當轉出前需確認轉出的內容已為表格形式。
2009年3月13日 星期五
踩地雷的概念
這次在實作踩地雷的時候,其實遇到了許多問題需要克服,
哈~~其實也算是我對網頁的語法還不夠熟悉吧!
原本想說在自己的電腦能夠正常運作的script,直接在我的blog開一個page放上來應該就能正常運作了!
沒想到卻遇到了天大的麻煩,後來查找了一下,終於知道我用的css語法,
如果是絕對定位的話,一定要在width、height、top和left後面加上pixel。
但是如果這些是用變數代入的時候要怎麼寫呢?答案就是x + 'px'如此而已...卻苦惱了我一兩個小時!暈...
然而我為什麼要寫踩地雷呢?哈~~因為我以前非常喜歡玩,而且以前沒有用到一些資料結構的觀念。
本次實作的內容完全運用HTML DOM以javascript取得節點來完成,而不是使用document.write或是innerHTML。
哈~~其實也算是我對網頁的語法還不夠熟悉吧!
原本想說在自己的電腦能夠正常運作的script,直接在我的blog開一個page放上來應該就能正常運作了!
沒想到卻遇到了天大的麻煩,後來查找了一下,終於知道我用的css語法,
如果是絕對定位的話,一定要在width、height、top和left後面加上pixel。
但是如果這些是用變數代入的時候要怎麼寫呢?答案就是x + 'px'如此而已...卻苦惱了我一兩個小時!暈...
然而我為什麼要寫踩地雷呢?哈~~因為我以前非常喜歡玩,而且以前沒有用到一些資料結構的觀念。
本次實作的內容完全運用HTML DOM以javascript取得節點來完成,而不是使用document.write或是innerHTML。
2009年3月10日 星期二
.Net 1.1 Treeview的checkbox如何影響子節點
最近客戶在瀏覽某個樹狀結構表示時反映其在點選核取方塊後,它所有的子階層要跟著此核取方塊更動。
http://www.w3.org/TR/NOTE-HTMLComponents
http://www.w3.org/TR/NOTE-HTMLComponents
2009年3月5日 星期四
反矩陣(inverse matrix)運算
在介紹反矩陣運算之前,需要先知道矩陣的加減乘法是怎麼運作,才有辦法理解反矩陣的運算規則。
並不是每一個矩陣都會有反逆陣,如果有反矩陣則稱此矩陣是可逆的(invertible)或是非奇異的(nonsingular),反之則稱之奇異的(singular)。
由於矩陣只有加減乘法,並沒有除法運算,所以我們如果需要計算兩矩陣相除時,
需先將除數的矩陣轉換為逆矩陣再做相乘運算即可得到同樣的結果。
由於自己怕忘記實作的反矩陣到底是怎麼實作的,以及所實作的方法又是什麼?因此在這邊加以說明。
反矩陣的算法有很多種(高斯消去法、伴隨矩陣/行列式(adj(A)/|A|).....等),而我所用的則是「高斯消去法」,主要就是運用單位矩陣 In,來達成目的。
底下列出實作的程式碼內容,由於本實作沒有運用分數計算的觀念,因此會有些許小數點誤差,但是其觀念並無錯誤。
並不是每一個矩陣都會有反逆陣,如果有反矩陣則稱此矩陣是可逆的(invertible)或是非奇異的(nonsingular),反之則稱之奇異的(singular)。
由於矩陣只有加減乘法,並沒有除法運算,所以我們如果需要計算兩矩陣相除時,
需先將除數的矩陣轉換為逆矩陣再做相乘運算即可得到同樣的結果。
由於自己怕忘記實作的反矩陣到底是怎麼實作的,以及所實作的方法又是什麼?因此在這邊加以說明。
反矩陣的算法有很多種(高斯消去法、伴隨矩陣/行列式(adj(A)/|A|).....等),而我所用的則是「高斯消去法」,主要就是運用單位矩陣 In,來達成目的。
底下列出實作的程式碼內容,由於本實作沒有運用分數計算的觀念,因此會有些許小數點誤差,但是其觀念並無錯誤。
訂閱:
文章 (Atom)