Time of Update: 2018-12-08
在javascript中對文檔中每個節點都有 parentNode——父節點 firstChild——第一個子節點 lastChild——最後一個子節點 previousSibling——緊挨著的前面的兄弟節點 nextSibling——緊挨著的後面的兄弟節點 五個相關的節點,這些節點可以不存在,為null。例如document就不包含父節點,文本節點(TextNode)就不包含子節點。 這樣就可以作短途旅行,訪問當前節點的某些相關節點。
Time of Update: 2018-12-08
以下面的html為例 複製代碼 代碼如下:<div id="myDiv" class="bd" title="我是div"> <img id="img1" /> <a id="myA" href = "http://www.baidu.com">百度</a> </div> 1.通過HTMLElement類型(對象)的屬性獲得和設定元素特性 複製代碼 代碼如下:var div =
Time of Update: 2018-12-08
因此,他們始終存著最新,最準確的資訊。從本質上說,所有NodeList對象都是訪問DOM文檔時即時啟動並執行查詢。例如下列代碼會導致無限的迴圈:複製代碼 代碼如下:<script type="text/javascript"> window.onload=function(){ var divObj=document.getElementsByTagName('div'); for(var i=0;i<divObj.length;i++){
Time of Update: 2018-12-08
對象建立: 當一個函數對象被建立時候,Function構造器產生的函數對象會運行類似這樣的代碼: 複製代碼 代碼如下:this.prototype={constructor:this}; 假設函數F F用new方式構造對象時,對象的constructor被設定成這個F.prototype.constructor 如果函數在建立對象前修改了函數的prototype,會影響建立出來對象的construtor屬性 如: 複製代碼 代碼如下:function F(){};
Time of Update: 2018-12-08
textarea元素已被廣泛用於網頁Web的IDE。通常網站內建的textarea編輯器不能滿足我們的需求,作為一名開發人員我們經常需要進行代碼的線上編輯,高亮顯示代碼等,因此,通過其他的開源項目,我們可以添加一些實用的功能, 在這篇文章中,我將使用JavaScript庫ACE來建立一個輸入框效果。這是一個完全開源的指令碼。該指令碼允許開發人員建立支援文法高亮的輸入框。然後你可以代碼嵌入到網站中的任何地方 下載庫 首先我們需要Github上下載ACE代碼。
Time of Update: 2018-12-08
使用的微軟的Json序列化庫那麼date會是複製代碼 代碼如下:/Date(1224043200000)/ 有效做法是 mydate.replace(/\/Date\((.*?)\)\//gi, "new Date($1)"); 如果要轉換格式,最好寫個擴充方法:Date.prototype.pattern=function(fmt) { var o = { "M+" : this.getMonth()+1, //月份
Time of Update: 2018-12-08
問題緣由:負責公司的開發平台研發工作,考慮的智慧財產權的保護工作,必須要考慮java的加密技術和js指令碼的加密技術。在目前java加密很容易破解的情況下,還是先搞定js的加密和壓縮,一方面可以提高頁面載入效能,另外一方面也希望辛苦研發出來的成果得到一定的保護。 研究過程: 1、先強烈鄙視一下哪些隨便轉載文章的傢伙,給我製造了很大的麻煩!!網上很多文章都不靠譜。。 2、首先想瞭解jquery使用什麼壓縮的,
Time of Update: 2018-12-08
有幾種方式,但都不完美 其一,不斷迴圈,直到達到指定時間 複製代碼 代碼如下:function sleep(numberMillis) { var now = new Date(); var exitTime = now.getTime() + numberMillis; while (true) { now = new Date(); if (now.getTime() > exitTime) return; } } 其實代碼並沒有讓指令碼sleep下來,
Time of Update: 2018-12-08
匹配中文字元的Regex:複製代碼 代碼如下:[\u4e00-\u9fa5]匹配雙位元組字元(包括漢字在內):複製代碼 代碼如下:[^\x00-\xff]應用:計算字串的長度(一個雙位元組字元長度計2,ASCII字元計1)複製代碼 代碼如下:String.prototype.len=function(){ return this.replace([^\x00-\xff]/g,"aa").length; }匹配空行的Regex:複製代碼 代碼如下:\n[\s|]*\r匹配HTML標記的Regex:
Time of Update: 2018-12-08
上一講我們談到了如何讓靜態人物變為動態,今天我們來談談如何使人物移動,因為這一講涉及上一講內容所以我把上一講的連結寫在下方:一、圖片準備今天我準備換幾張圖片,這樣更新鮮些。這些素材照樣來自《三國志曹操傳》,如果我沒記錯,應該是曹操的素材。接下來我要結合上一次的技術,來告訴大家如何使人物走動起來。不過今天我們著重在於如何使人物走動,因為我們上一講已經講了如何使人物化靜態為動態。二、代碼講解先看總的javascript代碼:複製代碼 代碼如下:var moveLengthLeft = 0; var
Time of Update: 2018-12-08
今天在犀牛書上發現了一個有用的函數 urlArgs(提取URL的搜尋字串中的參數)。我們經常會看到有的頁面連結地址後面會跟有參數,比如 http://www.xxx.com/?username=yyy&password=zzz 之類的,很多時候我們需要獲得這些參數的值(yyy和zzz),那麼就可以利用 urlArgs 函數,通過該函數的傳回值(傳回值是對象)的屬性來擷取。 urlArgs 函數代碼: 複製代碼 代碼如下:function urlArgs(){ var args = {};
Time of Update: 2018-12-08
Js的阻塞性 Javascript 在瀏覽器中的效能問題,可能是最重要的可用性問題 Js的阻塞性 瀏覽器用單一進程來處理UI進程和Js的執行 不管是內嵌的還是外鏈的,下載並立即執行 因為它有可能會修改頁面 頁面生存周期的概念 瀑布圖中看到了下載時間和executing time 在head中加入script 和link body載入到前不會輸出任何東西,因此會看到空白頁面 複製代碼 代碼如下:<script type="text/javascript">
Time of Update: 2018-12-08
擷取一個數組中的最大(最小)值的最簡單的方法,就是對數組進行一次遍曆,通過比較,找到其最大(最小)值。但是其實在javascript的原生方法中,已經提供了一些快捷方法,可以實現此功能。 1 Array.prototype.sort 複製代碼 代碼如下:var a = [7,3,4,6,10]; a.sort(function(a,b){ return (a-b);}) 注意,sort裡的比較函數是一定要傳入的,如果不傳此函數的話,a.sort()的結果是[10,3,4,6,7]; 2
Time of Update: 2018-12-08
1. javaScript沒有提供直接定義二維數組的方法,但可以使用定義數組的數組來定義JavaScript二維數組:例如定義一個 4X3二維數組a可以採用如下方法: var a=new Array(); a[0]=new Array(); a[1]=new Array(); a[2]=new Array(); a[3]=new Array(); 下面是一個案例 複製代碼 代碼如下:<!DOCTYPE html> <html xmlns="http://www.w3.org/1
Time of Update: 2018-12-08
寫在前面的話:國內對前端的研究在某些方面也不遜色於國外,這篇文章雖然看不太懂,但我很欣賞這種深入研究的精神!反科裡化的話題來自javascript之父Brendan Eich去年的一段twitter.
Time of Update: 2018-12-08
由於作者翻譯會加入 自己的理解 以便自己學習和使用, 如果英文好的同學可看下面 如文章中有翻譯錯誤還請留言. 交流並改正. (:======================Enein翻譯========================= John Resig 寫了一篇關於 JavaScript 裡 類似其它語言的 "繼承", 靈感來自於 base2 and PrototypeJS. 他為文章起名為"Simple JavaScript Inheritance" .
Time of Update: 2018-12-08
讀取cookie字串方法:複製代碼 代碼如下:alert(document.cookie); 一個網站的cookie字串包含了該網站網域名稱下的所有cookie(javascript 可訪問的,不包括 httponly 的cookie ),多個cookie之間用分號和一個空格隔開,最多一般是 20個或50個,例如,包含2個cookie的字串格式為複製代碼 代碼如下:document.cookie = "key1=value1;
Time of Update: 2018-12-08
一、兩個中括弧相加 [] + [] 中括弧沒有語句塊的作用,因此這裡的兩個中括弧就是一個數組。兩個數組(物件類型)相加先要將其轉換成實值型別(基本類型)。 1,轉成實值型別調用valueOf,[]的valueOf()還是自己 複製代碼 代碼如下:var arr = []; arr.valueOf() === arr; // true 2,轉成字串,[]的toString是Null 字元串 複製代碼 代碼如下:[].toString(); // "" String([]) // "" 結果出來了。
Time of Update: 2018-12-08
typeof用來檢測給定變數的資料類型(也可叫做基本類型,基礎資料型別 (Elementary Data Type)。包含undefined、boolean、string、number、object、function)var message = "so easy";alert(typeof message); //"string"alert(typeof 12);
Time of Update: 2018-12-08
任何編程都提出代碼複用,否則話每次開發一個新程式或者寫一個新功能都要全新編寫的話,那就歇菜了,但是代碼複用也是有好要壞,接下來的兩篇文章我們將針對代碼複用來進行討論,第一篇文避免篇,指的是要盡量避免使用這些模式,因為或多或少有帶來一些問題;第二排是推薦篇,指的是推薦大家使用的模式,一般不會有什麼問題。 模式1:預設模式 代碼複用大家常用的預設模式,往往是有問題的,該模式使用Parent()的建構函式建立一個對象,並且將該對象賦值給Child()的原型。我們看一下代碼: 複製代碼