1.在<head></head>中加入下列代碼 複製代碼 代碼如下:<script language=JavaScript> var timerID = null; var timerRunning = false; function stopclock (){ if(timerRunning) clearTimeout(timerID); timerRunning = false;} function startclock () { stopclock();
Onbeforeunload也是在頁面重新整理或關閉時調用,Onbeforeunload是正要去伺服器讀取新的頁面時調用,此時還沒開始讀取;而onunload則已經從伺服器上讀到了需要載入的新的頁面,在即將替換掉當前頁面時調用。Onunload是無法阻止頁面的更新和關閉的。而Onbeforeunload 可以做到。曾經做一個考試系統,涉及到防止使用者半途退出考試(有意或者無意),代碼如下: 複製代碼 代碼如下:<body onbeforeunload=" checkLeave()">
具體用法是這樣的: 將Javascript代碼放到</body>前(將指令碼代碼放在頁面底端有助於提高頁面速度,但是我現在還沒有切身的體會) 複製代碼 代碼如下:<script language=JavaScript> function mouseOutPic() //當滑鼠移出時,隱藏原圖 { if(window.event.toElement.id!="img000") bigPic.style.visibility = "hidden";
複製代碼 代碼如下:<form name="testform"> <select name="testselect"> <option value="first">first option</option> <option value="second">second option</option> <option value="third">third option</option>
我前段時間寫的一篇文章就遇到過這種事情,後來用CSS的overflow和max-width屬性暫時解決了頁面變形的問題。這種方法好處是簡單,但壞處是會破壞某些細節的效果。
最近在處理幾個項目中都用到了iframe,有時一個頁面中有多個iframe,而且幾個iframe需要相互訪問彼此的函數或者父視窗的函數。今天有空就將頁面架構編程做個整理。 一個頁面中的所有架構以集合的形式作為window對象的屬性提供,例如:window.frames就表示該頁面內所有架構的集合,這和表單對象、連結化物件、圖片對象等是類似的,不同的是,這些集合是document的屬性。因此,要引用一個子架構,可以使用如下文法: 複製代碼
stringObject.charAt(index)方法:返回指定索引位置處的字元。 stringObject.slice(start,[end])和stringObject.substring(start,[end])方法都接受兩個參數,分別為子字串的起始位置和終止位置,返回這兩者之間的字串,不包括終止位置的那個字串。如果不指定第二個參數,則預設為字串的長度,即從起始位置到字串的末尾。
Summary 私人變數 在對象內部使用'var'關鍵字來聲明,而且它只能被私人函數和特權方法訪問。 私人函數 在對象的建構函式裡聲明(或者是通過var functionName=function(){...}來定義),它能被特權函數調用(包括對象的建構函式)和私人函數調用。 特權方法 通過this.methodName=function(){...}來聲明而且可能被對象外部的代碼調用。它可以使用:this.特權函數() 方式來調用特權函數,使用 :私人函數()方式來調用私人函數。 公用屬性
1問題來自一位網友的提問: web頁面裡有多個表單,每個表單對應著某一類資料操作。 比如一個詳細的簡曆資訊頁面分 1、設定檔 2、工作經驗 3、項目經驗 4、其他資訊 4個表單。 一般的需求是允許使用者單獨提交其中任何一個表單到下一個頁面進行修改操作(也就是說頁面有4個不同的修改按鈕,點擊哪個按鈕則只提交某一個表單的資料到伺服器,並根據表單的action)。 現在有這樣的需求,允許使用者選擇其中任意的一個或多個表單進行提交修改,這樣的話在用戶端如何提交表單?
常見的有以下8個: mousedown:滑鼠的鍵鈕被按下。 mouseup:滑鼠的鍵鈕被釋放彈起。 click:單擊滑鼠的鍵鈕。 dblclick:滑鼠的鍵鈕被按下。 contextmenu :彈出右鍵菜單。 mouseover:滑鼠移到目標的上方。 mouseout:滑鼠移出目標的上方。 mousemove:滑鼠在目標的上方移動。 mousedown事件與mouseup事件可以說click事件在時間上的細分,順序是mousedown => mouseup =>
堆 heap 實值型別 原始類型(primitive type) Undefined: undefined (注意大小寫:類型/ 值,下同) Null: null (Undefined derived from Null) Boolen: true/false Number: Number.MAX_VALUE / Number.MIN_VALUE/ NaN ; isNaN()函數 (注意:新版本有變化,待查) String: 類型轉換: Boolen()/Number()/String() **
(10)addEvent 網上最流行的版本是Scott Andrew的,據說javascript界曾舉行一場比賽(此事件我們可以在Pro Javascript Techniques第100頁看到)或瀏覽PPK的網站,徵求添加事件與移除事件的函數,他就是其獲獎者。下面就是他的實現: 複製代碼 代碼如下:function addEvent(elm, evType, fn, useCapture) { if (elm.addEventListener) {
1,不可為空 <input type="text" onblur="if(this.value.replace(/^ +| +$/g,'')=='')alert('不可為空!')">2,只能輸入英文和數字<input onblur="if(/[^0-9a-zA-Z]/g.test(value))alert('有錯')"><input onkeyup="value=value.replace(/[^0-9a-zA-Z]/g,'')"/><input
綁定事件 複製代碼 代碼如下:var addEvent = function( obj, type, fn ) { if (obj.addEventListener) obj.addEventListener( type, fn, false ); else if (obj.attachEvent) { obj["e"+type+fn] = fn; obj.attachEvent( "on"+type, function() { obj["e"+type+fn](); } ); } };
如果能用字面量建立正則就最好不過,顯然有時我們不得不使用new RegExp()這種大消耗的建立方法,比如文法高亮與排版就大量用到Regex,要用到的patten越多,需要的時間就越長,Firefox好像是12秒就發出警告,IE就直接假死。這時我們就需要利用組存大法要提高我們程式的效能了。通常擺在我們眼前的如下兩種選擇來作為我們的容器,數組或對象。我這裡選擇前者,前者更輕量一點。下面我們就hasClass函數作效能改進。 原來的寫法: 複製代碼 代碼如下:var hasClass =
當頁面上面顯示了一個表單後,通常焦點 並不是放在第一個控制項上面,只需要一點通常的指令碼就可以實現這個效果 。 document.forms[0].elements[0].focus(); 如果頁面的第一個控制項是隱藏欄位,或是不支援focus() 上面這段javascript 可能就會出現錯誤 ! 複製代碼 代碼如下:var formutil = new Object; formutil.focusOnfirst = function() { if(document.forms.length&
毫無疑問,基於表現與結構相分離的原則,直接匯入一個新的樣式表是最好的選擇,但有些情況就行不通,如我們做一個能拖動的DIV,從設定樣式的角度看,就是把它絕對位置,以防影響原來的文檔流,然後一點點改變其top與left的值實現移動的效果。由於拖動是有時間概念的,一秒24幀,樣式表不可能面面俱到都把它們寫進去。因此動態產生樣式規則與快速修改樣式規則是非常有必要的,W3C為此做了大量的工作,在DOM2.0中,擴充了不少介面。
true:完全的複製一個節點,什麼叫完全呢,就是複製一切,包括他的子節點,以至於文本節點,凡是有的,一律複製,所謂完全 false:只複製當前節點,不複製任何的子節點,當然也不會複製他所包裹的文本,因為任何文本都有指向他的節點(文本節點) 當然有時候兩者是可以通用的哦,如果要複製的節點沒有任何的子節點,這是二者全等;比如 img... 為了讓大家理解的更為深刻,舉個小例子吧: 複製代碼 代碼如下:<div> <span>Shadow</span> |No
文章目錄 Array 對象的屬性 Javascript的數組實質是對象,它把數組的下標轉換成字串,用其作為屬性,因此它明顯比真正的數組慢,但它可以更方便地使用。 改變自身pop,push,reverse,shift,sort,splice,unshift, 不改變自身concat,join,slice,indexOf,lastIndexOf(後兩個為1.6),1.6新增的迭代器:map,filter,forEach,every,some,1
下面就以情況type=“text”為例: 複製代碼 代碼如下:<form id="form1" method="post"> <input type="text" /> <input type="text" /> <input type="button" value="clear" onclick="Refresh()" /> </form> 通過調用js的Refresh方法 方法一 複製代碼 代碼如下:function