原创 關於DOM操作的性能優化

最著名的有關用js操作dom的觀點是:js和dom是獨立的小島,用橋實現兩者的聯繫,但橋很窄,要過路費,所以我們要盡最大可能減少過橋的次數。下面代碼演示了用js操作dom的innerHTML,且一下修改5000次: <!DOCTYPE

原创 用js枚舉實現簡易菜單效果

用js枚舉實現簡易菜單效果,左側顯示菜單,右側顯示用戶選擇的菜單,一圖勝千言,還是直接來張效果圖吧: 以下是代碼: <DOCTYPE html> <html> <head> <title></title> <style>

原创 讓人省心的事件委託

事件委託:利用冒泡的原理把實踐添加到父元素級別上,觸發執行效果。 時間委託優點:       1.提高性能,不用for循環遍歷所有li,節省性能。       2.新添加的元素還會有原來之前的事件。 先看時間委託提高的性能吧,一個常見的

原创 一道靈活的css筆試題

今天在網上看到一css筆試題,乍一看很簡單,實則內部暗藏玄機,題目大概是:九宮格,每格長寬50px,邊框寬度5px,鼠標經過邊框變紅,效果如下: 鼠標路過時: 以下是代碼(如有不足之處望多加指正) <!DOCTYPE HTML> <

原创 css3實現動態圓形導航欄

核心問題: 1.圓形怎樣實現? css3的圓角屬性:border-radius:__ px; 把值設大點就圓啦。 2.怎樣實現動畫效果? css3的transition屬性:transition:__ s;控制轉變過程的時間, 時間不要太

原创 一些js小題(一)

一些js小題,掌握這些對於一些常見的面試、筆試題應該很有幫助: var a=10; function aa(){ alert(a); } function bb(){ aa(); } bb();//1

原创 關於IE處理margin和padding值超出父元素高度的問題

兩個div,父div有padding值,子div有margin-top值,瀏覽器在解析實際父子位置關係時,他們之間的距離是父padding+子margin-top。現在把父div設置固定高度,並有意讓父padding+子margin-to

原创 用css僞類實現提示框效果

題目要求用css實現下圖效果: 很明顯難點就在那個多出去的三角形上,下面代碼是用一個div來實現的,用到了僞類 : befor和 : after,使用這兩個僞類活生生的在div之前和之後多出了“那麼點東西”,然後設置其邊框,形成一黑色三

原创 再談visibility:hidden和display:none

之前寫過一篇有關visibility:hidden和display:none的文章:爲什麼要用用visibility:hidden;代替display:none;?主要是從瀏覽器性能方面入手,卻沒寫兩者的主要區別,今天補充。 首先disp

原创 IE瀏覽器中ajax使用緩存數據的問題

今天做了一個小功能:點擊鼠標實時更新系統時間,採用ajax,過程很順利,沒遇到啥差錯,谷歌,火狐,歐鵬一律通過,懷着忐忑的心情點開了IE8,果然,IE要對得起前端殺手的稱號:更新不了時間。 查了一下這才發現IE一直存在這個問題,內部原因是

原创 js中創建對象的幾種方式

創建對象指創建一個object並給這個對象添加屬性和方法,有以下幾個方式: 最基本的: var Person={};Person.name='tom';Person.age='20';Person.sayname=function(){a

原创 inherit與auto

大家是不是和我一樣,在剛開始學習css的時候,在css文件開頭是不是經常看到這樣的代碼: * {margin:0 px; padding:0 px;}  。 在接下來設置顏色字體時在body元素的css樣式中是不是又經常看到這樣的代碼:b

原创 近期

好久沒寫博客了,每天早早起牀,下班回到家也已很晚,這段時間過的還算可以,也不知具體收穫了啥。等過段時間看看能不能換個住處,儘量省點時間。

原创 js和html5實現畫板

html5新添了一個重要又強大的標籤元素<canvas>,該標籤真有徹底替換掉flash的盡頭,現在很多網頁遊戲就是用<canvas>完成的,下面代碼就是用該標籤製作的一個畫板。 效果圖: <!DOCTYPE HTML> <html>

原创 js一些小題(二)

******************************************************************* 一個全局下的函數: function test(){alert(this);} 當直接調用時test(