Time of Update: 2014-04-10
雖然XML已在不少應用程式中大顯身手,但它並不是十全十美的,特別是遇到AJAX應用的時候,XMLHttpRequest會檢查返回資料的MIME類型,如果是text/xml類型,XMLHttpRequest就會運行XML
Time of Update: 2014-04-10
做網站的時候,很多地方都是由表單提交組成的,但是有提交的地方都要有驗證。用戶端驗證最簡單的方法就是使用JS自訂函數。這個文檔包含平時常用的28個驗證函式,還有驗證函式幾種使用方法。 JS驗證函式的調用方法需要注意以下幾點: 給表單設定 onsubmit="return test()",配合<input type="submit" name="Submit" value="check"> 進行提交。 <input type=text
Time of Update: 2014-04-10
去除字串左右兩端的空格,在大部分程式設計語言中,比如PHP、vbscript裡面可以輕鬆地使用 trim、ltrim 或 rtrim實現。但在js中卻沒有這3個內建方法,需要手工編寫。下面的實現方法是用到了Regex,效率不錯,並把這三個方法加入String對象的內建方法中去。 寫成類的方法格式如下:(str.trim();) <script language="javascript"> String.prototype.trim=function(){
Time of Update: 2014-04-10
//寫cookies函數function SetCookie(name,value)//兩個參數,一個是cookie的名子,一個是值{ var Days = 30; //此 cookie 將被儲存 30 天 var exp = new Date(); //new Date("December 31, 9998"); exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name + "
Time of Update: 2014-04-10
閉包(closure)是Javascript語言的一個痛點,也是它的特色,很多進階應用程式都要依靠閉包實現。1. 變數的範圍要理解閉包,首先必須理解Javascript特殊的變數範圍。變數的範圍無非就是兩種:全域變數和局部變數。Javascript語言的特殊之處,就在於函數內部可以直接讀取全域變數。var n=999;function f1(){alert(n);}f1(); // 999另一方面,在函數外部自然無法讀取函數內的局部變數。function f1(){var
Time of Update: 2014-04-10
嚮導可以讓你的網站使用者快速上手使用你的web應用,提高網站的吸引力。嚮導一般分為好幾個步驟,每個步驟收集一些資料,並且支援退回功能,所有步驟完成後可以得到每一步的收集結果。這裡給大家展示一種比較通用,靈活且簡單的嚮導架構。 index.html:只提供了一個嚮導顯示位置的預留位置<html> <head> <title>幫客之家 - www.bkjia.com</title> <meta
Time of Update: 2014-04-10
在初學JS的時候就知道這個函數,卻一直沒有瞭解過他的用途,也一直都是睜一隻眼閉一隻眼,這次來深入地瞭解一下這個函數的作用。 eval的作用其實很簡單,就是把一段字串傳遞給JS解譯器,由Javascript解譯器將這段字串解釋成Javascript代碼,並且執行他。文法為 eval(string),string必需。要計算的字串,其中含有要計算的 JavaScript 運算式或要執行的語句。通過計算 string 得到的值(如果有的話)。 該方法只接受原始字串作為參數,如果
Time of Update: 2014-04-10
DOM 提供了一個名為 getElementById() 的方法,這個方法將返回一個對象,這個對象就是參數 id 所對應的元素節點。另外,getElementByTagName() 方法會返回一個對象的數組,每一個對象分別對應著文檔裡有給定標籤的一個元素。這個方法的參數是 html 標籤的名字。現在我們考慮一個問題,能不能通過標籤的類名class name來擷取該對象呢?下面是這個猜想的程式實現(支援多個class查詢和在某個範圍內進行查詢): /* *
Time of Update: 2014-04-10
從伺服器返回一個JSON字串,內容如下:var str = [{"id":"328482","user_id":"54","time":"1320214671"},{"id":"328283","user_id":"43","time":"1320046877"},{"id":"327075","user_id":"43","time":"1318740675"},{"id":"326153","user_id":"60","time":"1318144953"}]可以這麼引用遠程連結,該
Time of Update: 2014-04-10
事件流 JavaScript 的事件是以一種流的形式存在的,一個事件會有多個元素同時響應。有時候這不是我們想要的,我們只需要某個特定的元素響應我們的綁定事件就可以了。 事件分類 捕獲型事件(非IE)、冒泡型事件(所有瀏覽器都支援) 捕獲型事件是自上而下的,而冒泡型事件是自下而上的。下面我用一個圖來直觀表示: 冒泡型事件我們在工作中可能會比較多遇到,但捕獲型事件怎樣才會執行到呢,如果我們想要在非 IE 瀏覽器中要建立捕獲型事件,只需將
Time of Update: 2014-04-10
使圖片進行360度旋轉一周。能夠相容所有瀏覽器。IE使:matirx濾鏡 webkit: webkitTransform Opera: OTransform firefox:MozTransform。 很眩的一個JavaScript效果,參考它的編程技巧吧。 效果示範 Code <div id="container" style="width:520px;height:280px;position:relative;margin:0
Time of Update: 2014-04-10
在JavaScript中定義一個函數,有兩種寫法:function ftn(){} // 第一種var ftn = function(){} //
Time of Update: 2014-04-10
實現隨機數是各種程式設計語言都很常見的一個編程任務,下面介紹一下在JavaScript如何?隨機數。第一中方法通過重寫Math.random方法實現,第二種方法改自一個C實現,都可以實現編程目的。 直接上代碼: <script language="javascript"> var native_random = Math.random;Math.random = function(min, max, exact) {if (arguments.length ===
Time of Update: 2014-04-10
最近在網上看到了一個新的 Javascript 小程式——Streams,起初以為是一個普通的 Javascript 類庫,但讀了關於它的介紹後,我發現,這不是一個簡單的類庫,而且作者的重點也不是這個類庫的功能,而是——借用文中的一段話:如果你願意花10分鐘的時間來閱讀這篇文章,你對編程的認識有可能會被完全的改變(除非你有函數式編程的經驗!)。還有:Streams 實際上不是一個新的想法。很多的函數式的程式設計語言都支援這種特徵。所謂‘stream’是 Scheme 語言裡的叫法,Scheme
Time of Update: 2014-04-10
JavaSciprt事件中有兩個很重要的特性:事件冒泡以及目標元素。 當一個元素上的事件被觸發的時候,比如說滑鼠點擊了一個按鈕,同樣的事件將會在那個元素的所有祖先元素中被觸發。這一過程被稱為事件冒泡;這個事件從原始元素開始一直冒泡到DOM樹的最上層。
Time of Update: 2014-04-10
簡介這篇文章是為專業程式員介紹的JavaScript語言的,它是一種小巧的語言,如果你熟悉其他的程式設計語言,那麼這篇文章對你來講不是那麼難以理解。JavaScript不是Java,他們是兩門完全不同的語言,JavaScript不是Java的子集,JavaScript不能被認為是Java(Java就是Java)。JavaScript分享了像Java一樣分享C語言的文法,但從更深角度講JavaScript更與Scheme和Self有相似之處。它是一門小巧的語言,但是它確實強大的和豐富的語言。你應該
Time of Update: 2014-04-10
將背景程式(如php)發送過來的json資料轉化為javascript的數組或者對象的方法十分簡單,代碼如下:// 假設後台發送的json資料為 '{a:2,b:1}' 儲存於str中var data = eval( '(' + str + ')' );然而想將一個javascript對象轉化為json格式的字串卻並不那麼簡單,特別是對象的屬性值遞迴包含一個對象時(如 var obj={a:[2,3],b:{m:[3,4],n:2} } ),那麼有沒有什麼方法將obj轉化為json格式的字串呢?
Time of Update: 2014-04-10
在網上看了很多用js在游標處插入文字的代碼,很多都沒有用,互抄而已,浪費時間。最近用到一個新方法,可以到達這個需求。IE支援document.selection,Firefox,Chrome,Safari以及Opera都有selectionStart和selectionEnd屬性。 效果示範 歡迎訪問www.bkjia.com 代碼如下:function insertText(obj,str) { if
Time of Update: 2014-04-10
Json在Web開發的用處非常廣泛,作為資料傳遞的載體,如何解析Json返回的資料是非常常用的。下面介紹下四種解析Json的方式: Part 1var list1 = [1,3,4];alert(list1[1]);var list2 = [{"name":"leamiko","xing":"lin"}];alert(list2[0]["xing"])alert(list2[0].xing) Part 2var value =
Time of Update: 2014-04-10
Javascript中大括弧"{}"有四種語義作用: 語義1. 組織複合陳述式,這是最常見的: if( condition ) { //...}else { //...}for() { //...} 語義2,對象直接量聲明: var obj = {name : 'jack',age : 23}; 整個是個指派陳述式,其中的{name:'jack',age:23}是個運算式。 語義3,聲明函數或函數直接量: function f1()