Time of Update: 2013-10-22
如果對範圍,函數為獨立的對象這樣的基本概念理解較好的話,理解閉包的概念並在實際的編程實踐中應用則頗有水到渠成之感。在DOM的事件處理方面,大多數程式員甚至自己已經在使用閉包了而不自知,在這種情況下,對於瀏覽器中內嵌的JavaScript引擎的bug可能造成記憶體流失這一問題姑且不論,就是程式員自己調試也常常會一頭霧水。用簡單的語句來描述JavaScript中的閉包的概念:由於JavaScript中,函數是對象,對象是屬性的集合,而屬性的值又可以是對象,則在函數內定義函數成為理所當然,如果在函數f
Time of Update: 2013-10-22
複製代碼 代碼如下:<html><head><title>遍曆表格</title><script language="javascript"> function getData() { var arrData=new Array(); var
Time of Update: 2013-10-22
複製代碼 代碼如下:function validateFileSize(id, maxsize) { var btnsave = document.getElementById("Button2"); btnsave.disabled
Time of Update: 2013-10-22
在很多項目中,我們經常需要使用JS,在頁面前面對前台的某些元素做做修改,js 的replace()方法就必不可少。經常使用"ABCABCabc".replace("A","B")的同學應該會比較清楚,改語句的最終結果是BBCABC,這種方法只能替換第一個匹配的元素。如果替換所有呢?使用Regex即可:"ABCABCabc".replace(/A/g,"B") 即可。那如果想替換A的同時也可以替換a呢?那你可以使用"ABCABCabc".replace(/a/ig,"B");Flag:
Time of Update: 2013-10-22
javascript 當頁面dom模型載入完成後才執行javascript不能使用<body onload="">加上 defer 等於在頁面完全在入後再執行,相當於 window.onload ,但應用上比 window.onload 更靈活複製代碼 代碼如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
Time of Update: 2013-10-22
看了《高效能JavaScript》的讀書筆記幾個原則:1、將指令碼放在底部<link>還是在head中,用以保證在js載入前,能載入出正常顯示的頁面。<script>放在</body>前。2、成組指令碼由於每個<script>標籤下載時阻塞頁面解析過程,所以限制頁面的<script>總數也可以改善效能。適用於內聯指令碼和外部指令碼。3、非阻塞指令碼等頁面完成載入後,再載入js代碼。也就是,在window.load事件發出後開始下載代碼。
Time of Update: 2013-10-22
1.before():將新節點添加到前面 2.after():將節點添加到低部 3.prepend():把節點變成第一個節點 4.append():把新節點添加到末端,與appendTo()效果相同,只是文法上有差異 5.remove():除移節點 樣本: 複製代碼 代碼如下: <ul> <li class="vacation"> <h2>Hawaiian Vac</h2> <button>Get
Time of Update: 2013-10-22
setTimeout方法是定時程式,也就是在什麼時間以後幹什麼。幹完了就拉倒。setInterval方法則是表示間隔一定時間反覆執行某操作。如果用setTimeout實現setInerval的功能,就需要在執行的程式中再定時調用自己才行。如果要清除計數器需要 根據使用的方法不同,調用不同的清除方法:例如:(1):複製代碼 代碼如下:t=setTimeout('northsnow()',1000);clearTimeout(t);(2):t=setInterval('northsnow()',10
Time of Update: 2013-10-22
[html]複製代碼 代碼如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd"> <HTML xmlns="http://www.w3.org/1999/xhtml"> <HEAD>
Time of Update: 2013-10-22
一、window.open()支援環境:JavaScript1.0+/JScript1.0+/Nav2+/IE3+/Opera3+二、windown.open基本文法:window.open(pageURL,name,parameters)其中:pageURL為子視窗路徑name為子視窗控制代碼parameters為視窗參數(各參數用逗號分隔)三、windown.open樣本:複製代碼
Time of Update: 2013-10-22
如下: 代碼如下: 複製代碼 代碼如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <meta
Time of Update: 2013-10-22
複製代碼 代碼如下:var form=$("<form>");//定義一個form表單form.attr("style","display:none");form.attr("target","");form.attr("method","post");form.attr("action","exportData");var
Time of Update: 2013-10-22
對於本站的導覽列,想做點什麼。所以,選擇了用js對導覽列的顏色做了梯度的變化處理。 起初,覺得用opacity屬性(透明度)來改變顏色的梯度變化。不過,這樣會出現一個問題。 每一個導航標籤用的是[li],當滑鼠浮動到標籤上時,通過onmouseover()立即改變[li]的className,並用setInterval()來使其opacity(透明度)由0變到1.不過,當滑鼠離開時,對於[li]標籤的顏色恢複的處理貌似麻煩了許多。所以,很快就放棄了這個做法,換種思路。
Time of Update: 2013-10-22
有一段時間沒更新部落格了,都不知道忙些什麼,學習也沒什麼進展,慚愧。 這一周閒置時間學著自己寫一下JQ外掛程式。以前用原生的JS做過類似拖拽div的效果,現在按原思路改做成一個JQ的小外掛程式,當作製作JQ外掛程式的一個小練習。 html為 複製代碼 代碼如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
Time of Update: 2013-10-22
寫javascirpt代碼時,typeof和instanceof這兩個操作符時不時就會用到,堪稱必用。但是!使用它們總是不能直接的得到想要的結果,非常糾結,普遍的說法認為“這兩個操作符或許是javascript中最大的設計缺陷,因為幾乎不可能從他們那裡得到想要的結果” typeof 說明:typeof返回一個運算式的資料類型的字串,返回結果為js基本的資料類型,包括number,boolean,string,object,undefined,function。 從說明來看,貌似沒什麼問題。
Time of Update: 2013-10-22
json檔案是一種輕量級的資料互動格式。一般在jquery中使用getJSON()方法讀取。 複製代碼 代碼如下: $.getJSON(url,[data],[callback]) url:載入的頁面地址 data: 可選項,發送到伺服器的資料,格式是key/value callback:可選項,載入成功後執行的回呼函數 1.首先建一個JSON格式的檔案userinfo.json 儲存使用者資訊。如下: 複製代碼 代碼如下: [ { "name":"張國立", "sex":"男",
Time of Update: 2013-10-22
複製代碼 代碼如下: <title></title> <style type="text/css"> .imgclass{ width:300px; height:300px; border:solid 1px red;} </style> <script src="jquery-1.9.
Time of Update: 2013-10-22
因為要做這樣一個作業,就是兩個select中option相互轉換,圖如下: 這個作業就是給幾個按鈕添加click()事件,一般的用法是這樣的: 複製代碼 代碼如下: $("#but_one").click(function(){ $("#select1 option:selected").appendTo($("#select2")); }); 然後我尋找了官方文檔,對click的說明是這樣的,後來我還是沒有百度到答案,
Time of Update: 2013-10-22
在JS中無論是setTimeout還是setInterval,在使用函數名作為調用控制代碼時都不能帶參數,而在許多場合必須要帶參數, 這就需要想方法解決。 一、採用字串形式:——(缺陷)參數不能被周期性改變 setInterval("foo(id)",1000); 二、匿名函數封裝 (推薦) 複製代碼 代碼如下: window.setInterval(function() { foo (id); }, 1000); 這樣就可以周期性執行foo(id)這個函數,而且把變數id傳遞進去;
Time of Update: 2013-10-22
js部分: 複製代碼 代碼如下: var checkboxs = document.getElementsByTagName("input"); for(var i=0;i<checkboxs.length;i++) { if(checkboxs[i].type=="checkbox" && checkboxs[i].checked==true){ var trobj=checkboxs[i].parentNode.parentNode; //找到tr節點