Time of Update: 2017-02-27
Mootools是一個很好的JavaScript架構,它簡潔、模組化,使用很簡單,開發人員能夠很快上手,編寫擴充能力強、相容性好的JavaScript代碼。我這兩天用了用,感覺和Prototype用法簡直一模一樣,不過功能似乎更加強,有很多效果,拖拽等。而且它的物件導向,繼承比Prototype更直觀好用,所以我開始學習這個架構。首先看看Mootools的基本用法吧,更加詳盡的解釋可以在官方網站上找到。1.? 如果我們要寫一個Animal類,我們可以這樣寫: var Animal = new
Time of Update: 2017-02-27
兩種定義Regex對象(RegExp)的方法:1) var pattern = /s$/;2) var pattern = new RegExp("s$");系統學習Regex的兩本參考:1)Programming Perl by Larry Wall et al. (O'Reilly).2)Mastering Regular Expressions by Jeffrey E.F. Friedl
Time of Update: 2017-02-27
首先需要理解的一點是,DOM是針對XML的基於樹的API,它的實現有很多(各語言基本都有自己的實現),我們討論的是javascript中或者說xhtml(html)對DOM的實現。一、使用DOM考慮一個html檔案:<html><head><title>測試</title></head><body><p>測試</p></body></html>1.訪問節點:訪問html元素:v
Time of Update: 2017-02-27
var arr=['a','b','c'];若要刪除其中的'b',有兩種方法:1.delete方法:delete arr[1]這種方式數組長度不變,此時arr[1]變為undefined了,但是也有好處原來數組的索引也保持不變,此時要遍曆數組元素可以才用for(index in arr)document.write('arr['+index+']='+arr[index]);這種遍曆方式跳過其中undefined的元素*
Time of Update: 2017-02-27
javascript數組;記錄一下!一個數組:01.<script>02. var colors = {03. "1" : {04. "a" : "#000000",05. "b" : "#fdf6ed",06. "c" : "#634322",07. "d" : "#c8ab8f",08.
Time of Update: 2017-02-27
我想做過網頁的朋友對這個屬性函數都不會太陌生吧——我們可以從很多JavaScript參考書上找到它的用法:
Time of Update: 2017-02-27
先看一下MSDN中的介紹replace 方法返回根據Regex進行文字替換後的字串的複製。stringObj.replace(rgExp, replaceText)參數stringObj必選項。要執行該替換的 String 對象或字串文字。該字串不會被 replace 方法修改。rgExp必選項。為包含Regex模式或可用標誌的Regex對象。也可以是 String 對象或文字。如果 rgExp
Time of Update: 2017-02-27
之前已經分享過一個在dom中使用者輸入姓名後自動用js拆分成姓與名到表單中的jquery外掛程式,由於項 目的需要,需要一個在用戶端自動拆分,但不需要將拆分結果呈現給使用者的方法,所以又寫了一個獨立的 方法,貼出來跟大家分享交流$.extend({ splitName: function(fullname){ var hyphenated =
Time of Update: 2017-02-27
如果您知道記憶體流失的起因,那麼在 JavaScript 中進行相應的防範就應該相當容易。在這篇文章中,作者 Kiran Sundar 和 Abhijeet Bhattacharya 將帶您親曆 JavaScript 中的循環參考的全部基本知識,向您介紹為何它們會在某些瀏覽器中產生問題,尤其是在結合了閉包的情況下。在瞭解了您應該引起注意的常見記憶體流失模式之後,您還將學到應對這些泄漏的諸多方法。JavaScript 是用來向 Web
Time of Update: 2017-02-27
我們在開發的時候針對DOM操作,用簡單的JS應用來說不成問題,但如果你對視圖的每次更新都需要對我文檔中非常大量的塊進行操作呢?這時JS模版就派上用場了。源地址:http://rfyiamcool.blog.51cto.com/1030776/1278620這是一個執行個體,我們可以把json的資料,按照自己的想法嵌入到模板裡面。<!DOCTYPE html><html> <head> <title>Handlebars
Time of Update: 2017-02-27
JavaScript語言是基於對象的(Object-Based),而不是物件導向的(object-oriented)。之所以說它是一門基於對象的語言,主要是因為它沒有提供象抽象、繼承、重載等有關物件導向語言的許多功能。而是把其它語言所建立的複雜物件統一起來,從而形成一個非常強大的對象系統。雖然JavaScript語言是一門基於對象的,但它還是具有一些物件導向的基本特徵。它可以根據需要建立自己的對象,從而進一步擴大JavaScript的應用範圍,增強編寫功能強大的Web文檔。一、對象的基礎知識1、
Time of Update: 2017-02-27
Quiz1Javascript真的需要類(Class)嗎?我們首先先看下其他有類(Class)的物件導向語言(如: Java)的一些特性。父類與子類父類(Superclass)和子類(Subclass),並不是為瞭解決父親與兒子的 問題,而是為瞭解決類的內含項目關聯性的,我們用Sub表示“子類”,用Sup表示“父類”,則有: Sub Sup這是有區別的,例如通常我們能夠將子類當成父類來使用,但認人的時候我們並不能把兒子當成父親。或者可以這
Time of Update: 2017-02-27
作為一名網站開發WEB前端工程師,對自己開發的網站項目應該儘可能地對其效能進行最佳化,現在互連網上搜尋到的網站效能最佳化多是翻譯轉載自Yahoo14條或34條。Yahoo的最佳化建議關注在大的方面,下面,W3C Group為大家呈現WEB前端開發高效能最佳化部分之JavaScript的最佳化細節!一、避免出現指令碼失控不論什麼指令碼,在任何時間、任何瀏覽器上執行,都不應該超過100毫秒。如果實際執行的時間長於這個底限,一定要將進程分解成若干更小的程式碼片段。指令碼失控基本上有以下四個方面的原因:
Time of Update: 2017-02-27
我們已經實現了一個簡單的非同步呼叫架構,然而還有一些美中不足,那就是順序執行的非同步函數需要用嵌套的方式來聲明。現實開發中,要按順序執行一系列的同步非同步作業又是很常見的。還是用百度Hi網頁版中的例子,我們先要非同步擷取連絡人清單,然後再非同步擷取每一個連絡人的具體資訊,而且後者是分頁擷取的,每次請求發送10個連絡人的名稱然後取回對應的具體資訊。這就是多個需要順序執行的非同步請求。為此,我們需要設計一種新的操作方式來最佳化代碼可讀性,讓順序非同步作業代碼看起來和傳統的順序同步作業碼一樣優雅。傳統
Time of Update: 2017-02-27
在上一篇文章裡,我們說到了要實現一個Cat.Async.Operation類,通過addCallback方法傳遞迴調函數,並且通過yield方法返回回調結果。現在我們就來實現這個類吧。類結構首先我們來搭一個架子,把需要用到的似有變數都列出來。我們需要一個數組,來儲存回呼函數列表;需要一個標誌位,來表示非同步作業是否已完成;還可以學IAsyncResult,加一個state,允許非同步作業的實現者對外暴露自訂的執行狀態;最後加一個變數儲存非同步作業結果。var Cat =
Time of Update: 2017-02-27
在上一篇文章裡說到,我們要設計一個非同步呼叫架構,最好能夠統一同步非同步呼叫的介面,同時具體調用順序與實現方式無關。那麼我們現在就來設計這樣一個架構的用例。傳遞迴調我們首先要考慮的一個問題是,如何傳遞迴調入口。在最傳統的XHR調用當中,回呼函數會被作為最後一個參數傳遞給非同步函數:function asyncOperation(argument,
Time of Update: 2017-02-27
問題在Ajax應用中,調用XMLHttpRequest是很常見的情況。特別是以用戶端為中心的Ajax應用,各種需要從伺服器端擷取資料的操作都通過XHR非同步呼叫完成。然而在單線程的JavaScript編程中,XHR非同步呼叫的代碼風格實在是與一般的JavaScript代碼格格不入。額外參數考慮一個除法函數,如果它是純用戶端的同步函數,那麼簽名會是這樣的:function divide(operand1,
Time of Update: 2017-02-27
近來,我討論了關於Windows Vista中擁有管理員權限的使用者如何提升進程許可權的幾種技術。所有這些技術(包括我馬上要介紹的這種)都要求使用者在進程提升的過程當中,通過UAC會話。這就是Windows Vista中,進程提升的工作方式。在這篇文章中,我將向大家傳授一項技術,使大家清晰地知道Windows中關於許可權提升和最小許可權問題的內幕。這項技術源自我最信賴的一個人——Aaron
Time of Update: 2017-02-27
JavaScript的數組排序函數 sort方法,預設是按照ASCII 字元順序進行升序排列。arrayobj.sort(sortfunction);參數:sortFunction可選項。是用來確定元素順序的函數的名稱。如果這個參數被省略,那麼元素將按照 ASCII 字元順序進行升序排列。sort 方法將 Array 對象進行適當的排序;在執行過程中並不會建立新的 Array 對象。如果為 sortfunction
Time of Update: 2017-02-27
本篇技巧和訣竅記錄的是:利用JavaScript選擇GridView行。下面我們利用JavaScript完成這一功能。我們可以通過調用JavaScirpt函數改變單擊的行的背景顏色來類比選擇的行 ,這裡需要聲明一個隱藏欄位,從JS中獲得選取GridView行的ID。在選擇/刪除 事件中,可以從隱藏欄位中得到選擇行的ID,完成一些需要功能。第一步:在頁面中添加GridView控制項和一個按鈕,隱藏欄位<input id="hdnEmailID"