Time of Update: 2018-12-08
平時我們擷取事件對象一般寫法如下: 複製代碼 代碼如下:function getEvent(event) { return event || window.event // IE:window.event } 如果沒有參數,也可寫成(非IE :事件對象會自動傳遞給對應的事件處理函數,且為第一個參數): 複製代碼 代碼如下:function getEvent() { return arguments[0] || window.event // IE:window.event } 這樣的寫法在除
Time of Update: 2018-12-08
/* **@控制控制項只能輸入數字,含-(負號).(小數點) **@Inline HTML: <ELEMENT ... onkeypress="javascript:onlyNumber()" style="ime-mode:disabled"> For Input **@Event property: object.attachEvent("onkeypress",onlyNumber);object.style.imeMode = "disabled";
Time of Update: 2018-12-08
JS沒有提供所謂的類繼承,據說在2.0中要加入這種繼承方式,但是要所有瀏覽器都實現2.0的特性那肯定又得N多年。昨天看了crockford 的一個視頻,裡面講解了一下JS的繼承方式,按照PPT裡面說的,一共分了三類:Prototypal,pseudoclassical,Parasitic Inheritance。 下面主要介紹一下原型繼承:When a function object is created, it is given a prototype member which is an
Time of Update: 2018-12-08
讀取的xml: 複製代碼 代碼如下:<svg id="svgID" key="1"> <desc id= "descID"> Text1 </desc> <defs> Text2 </defs> <g> text3 </g> </svg>javascript對此xml的解析方法如下:複製代碼 代碼如下:<html xmlns="http://www.w3.org/1999/xhtml" xml:
Time of Update: 2018-12-08
複製代碼 代碼如下:parseInt("Hello",10);//return NAN parseInt("110",10);//return 110 所以簡單的判斷字串是否為數位方法就是利用isNaN(),如果返回true,則該字串不為數字,否則為數字複製代碼 代碼如下:isNaN(parseInt("Hello",10));//true; isNaN(parseInt("110",10));//false; 註:不能利用以下方式判斷:複製代碼
Time of Update: 2018-12-08
1.數值型到String型的轉化 假設該數值型(int/float/double)變數為:num 其轉化後得到的字串為:str 則其轉化為字串的方式為有三種,分別如下: (1) str = String.valueOf(num); (2) str =Integer.toString(num); (3) str =num+""; 2.String型到數值型的轉化(此處以int為例,double,float類似) 其轉化方式有兩種,分別如下: (1)
Time of Update: 2018-12-08
複製代碼 代碼如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <style><!-- .errorInfo{ color:red; padding-left:5px; } --></style><style
Time of Update: 2018-12-08
1.用javascript重新定義 window.onbeforeunload() 事件 在javascript裡定義一個函數即可 function window.onbeforeunload() { alert("關閉視窗")} alert()事件將會在關閉視窗前執行,你也可以使用者決定是否關閉視窗 function window.onbeforeunload() { if (event.clientX>document.body.clientWidth &&
Time of Update: 2018-12-08
複製代碼 代碼如下:var testButton=document.getElementById("testButton"); function handlerTest() { var oEvent=window.event;//for IE //var oEvent=arguments[0];// for DOM if(oEvent.type=="click") { alert("click"); } else if(oEvent.type=="mouseover") {
Time of Update: 2018-12-08
當第一次從主視窗進入到一個iframe簡稱{A}中,此時這個{A}中呈現的資料是新的,這時我又點了另外的一個iframe簡稱{B},這裡{B}的資料也是新的,在{B}中進行一些邏輯處理,如向{A}中批量增加模型資料,這裡我們再進入到{A}中會探索資料是被緩衝著的。因為是從{B}中對大量操作了{A}的資料,{B}是與server通訊的,也就是會進行邏輯層/持久層操作,這樣server端更新的呈現部分是{B}而不是全部,這也就是局部重新整理,只刷{B}。而我們需要做的是讓{A}中的內容也跟著變。
Time of Update: 2018-12-08
複製代碼 代碼如下:function User(properties){ for(var i in properties){ //遍曆該對象的所有屬性,並保證其作用於正確 (function(which){ var p=i; which["get"+p]=function(){ //動態產生的方法 return properties[p]; //返回對象的屬性值 }; which["set"+p]=function(val){ //動態產生的方法 properties[p]=val; }; })
Time of Update: 2018-12-08
複製代碼 代碼如下:<script type="text/javascript"> //更多的驗證可以繼續添加到errMsg對象裡 var errMsg={ required:{ msg:"This field is required.", //load參數指定是否在載入的時候驗證 test:function(obj,load){ return obj.value.length > 0 || load || obj.value==obj.defaultValue; } }, /
Time of Update: 2018-12-08
複製代碼 代碼如下:<script type="text/javascript"> function Base(){} //根抽象類別 Base.toBase=function(){ //將一個對象轉化成Base類的執行個體的方法 return new Base(); } Base.inherit=function(parent){ //用於繼承Base類的執行個體的方法 var F=function(){} F.prototype=parent; return new F; }
Time of Update: 2018-12-08
複製代碼 代碼如下:[code] <script type="text/javascript"> var loading = { element: null, count: 0, ID: 0, createLoading: function(parent, width, height){ //用於產生外圍的進度條框 loading.element = document.createElement("div"); loading.element.id = "loading";
Time of Update: 2018-12-08
JavaScript: 複製代碼 代碼如下:<script type="text/javascript"> var level1 = ["Beijing", "GuangZhou", "ShangHai"]; var level2 = [["ZhaoYang", "TianTan", "GuGong"], ["Tianhe", "Panyu"], ["PuDong", "PuXi"]]; var level3 = [[["TianShan", "HuangShan"],
Time of Update: 2018-12-08
複製代碼 代碼如下:/** * @author Supersha * @QQ:770104121 */ var cssQuery = { //parent:用於儲存當前節點的父節點的引用 parent: document, select: function(selectorStr){ var selectors=selectorStr.split(" "); //分隔字串 for (var i = 0, len = selectors.length; i < len; i++) {
Time of Update: 2018-12-08
第一種:view-source法 view-source是一種協議,早期基本上每個瀏覽器都支援這個協議。但是不知道什麼原因,從IE6 Beta2以後IE就不再支援此協議了。這個方法現在只能用在FireFox瀏覽器上使用了! 使用方法:在瀏覽器地址欄中輸入 view-source: 斷行符號即可看到網頁的原始碼了。 第二種:JavaScript法 這種方法似乎也不是通用的,在IE6和Opere瀏覽器上實驗成功,但是在FireFox瀏覽器上就沒成功!
Time of Update: 2018-12-08
下面介紹的是一些純javascript實現的文法高亮外掛程式。 英文原文:http://www.webdesignbooth.com/9-useful-javascript-syntax-highlighting-scripts/1. SyntaxHighlighter我相信這個外掛程式是我們使用多的,它支援超多的語言,如果遇到不支援的文法還支援自訂。2. SHJSSHJS 是js文法高亮外掛程式的代表,它支援很多程式設計語言,相容Firefox 2 &3, IE 6 & 7,
Time of Update: 2018-12-08
下面我們來看下這個例子吧! 複製代碼 代碼如下:<html> <head> <title>jqueryDemo:quanjiaoNum</title> <script src="jquery.js" src="jquery.js" type="text/javascript"></script> <script type="text/javascript">
Time of Update: 2018-12-08
第一種:JSON方式/對象直接量 格式: var 對象名 = { 變數1: 變數1的值, 變數1: 變數1的值, ……, 函數1: function() { 函數體 }, 函數2: function() { 函數體 }//Note:最後的逗號要去除為了和IE相容。 }; 說明: (1) 大括弧內直接填寫變數或者函數; (2) 對象的內容與值以冒號分隔,成對出現; (3) 包含的變數或者函數之間以逗號分隔; (4) 函數需要寫在function(){}的大括弧之內。 例子: var 對象名 = {