Time of Update: 2017-01-19
自動序列編號和自動屬性編號,效果圖如下:實現原理: 添加和刪除是逆向過程,實現是一致的。 增加時,向父容器中增加元素append方法,並將所有的自訂屬性編號和序列編號設定為空白,然後通過$.each方法,重新為自訂屬性編號和序列編號賦值。 複製代碼 代碼如下: $.each(items, function (k, v) { $(this).attr("opt", "mopt" + k); serials.eq(k).html(k); });
Time of Update: 2017-01-19
函數 :split() 功能 :使用一個指定的分隔字元把一個字串分割儲存到數組 例子: str=”jpg|bmp|gif|ico|png”; arr=theString.split(”|”); //arr是一個包含字元值”jpg”、”bmp”、”gif”、”ico”和”png”的數組 函數 :John() 功能 :使用您選擇的分隔字元將一個數組合并為一個字串 例子: var delimitedString=myArray.join(delimiter); var myList=new
Time of Update: 2017-01-19
JavaScript 學習筆記之一jQuery寫法圖片等比縮放以及預先載入 以前對於JavaScript總是在用到的時候在頁面上寫幾個函數,基本沒考慮到函數的封裝與重用,最近有個項目可能對於這方面要求有點高,所以就研究了下類似jQuery的封裝。 這裡就圖片等比縮放以及預先載入的效果來嘗試下,寫寫類似的JavaScript代碼。 圖片等比縮放以及預先載入的效果如下(預先載入效果有時候會不是很明顯): JS主要代碼如下: 複製代碼 代碼如下: (function() { var yQuery =
Time of Update: 2017-01-19
在JavaScript中,阻止表單預設提交行為的方法有兩種,分別是:(1) return false範例程式碼<form name="loginForm" action="login.aspx" method="post"> <button type="submit" value="Submit" id="submit">Submit</button></form><script> var submitBtn =
Time of Update: 2017-01-19
substr函數和substring函數都是用來從某個“母字串”中提取“子字串”的函數。但用法有些差別,下面分別介紹substr 方法 定義和用法 substr 方法用於返回一個從指定位置開始的指定長度的子字串。 文法 stringObject.substr(start [, length ]) 參數 描述 start 必需。所需的子字串的起始位置。字串中的第一個字元的索引為 0。 length 可選。在返回的子字串中應包括的字元個數。 說明
Time of Update: 2017-01-19
眾所周知,一句JS代碼以分號結束和以斷行符號符結束在瀏覽器中均能正常運行(至少在我的IE7中是這樣)。不知道這是JS語言的特性或者僅僅是解譯器的容錯功能?由於斷行符號符也可以是一句代碼結束的標誌,進行JS壓縮的時候就麻煩些了。要壓縮掉所有的斷行符號符,程式就得知道哪裡是一條語句的結束,並在結束位置後面添加上";"。這是一件不容易的事情(或許有容易的方法我還沒想到吧),最後無賴我只好採取了一種折中的方法:保留必要的斷行符號符,去掉";"、","、"+"等等分隔字元前後的斷行符號符。(要是JS也像C
Time of Update: 2017-01-19
<a href="javascript:alert('這裡有2個單引號一個雙引號"\'\' :)');" >引號的嵌套</a> 單引號 ‘ 的 ASCII碼是 39 雙引號 " 的 ASCII碼是34,所以我們可以用xx;的形式來代替具體的符號。雖然變成了xx;的形式,但是在嵌套環境中仍然要很當心。這裡代碼裡的alert()使用的引號是單引號,alert裡的字串應該轉義掉單引號。於是就有了 \'的形式。反之,就要轉義掉 \
Time of Update: 2017-01-19
用split()方法 例: New Document [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]運行輸出結果是 a c d e
Time of Update: 2017-01-19
無標題文檔 [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]
Time of Update: 2017-01-19
我們說一個函數的調用模式是作為一個函數來調用,是要與其它三種調用模式做區分函數其他的三種調用: 方法調用模式,構造器調用模式,apply/call調用模式。 方法的調用模式: var obj={ fun1: function(){ //方法內容 this; //指的是window }}obj.fun1() //方法的調用構造器的調用: function Person(name, age, job){ this.name = name; this.age =
Time of Update: 2017-01-19
大家都見過某度中的惡意廣告,你關閉了又出來了!為何,JS來告訴你HTML <body> <h3 class="whiteColor">無法關閉的彈框,打不死的小強!</h3> <div id="middleBox"> <a href="javascript:;" class="close_btn" id="closeBtn"><img src="images/close_icon.png" alt=""
Time of Update: 2017-01-19
現象:1. 在JavaScript中變數和函數的聲明會提升到最頂部執行。2. 函數的提升高於變數的提升。3. 函數內部如果用var聲明了相同名稱的外部變數,函數將不再向上尋找。4. 匿名函數不會提升。5. 不同<script>塊中的函數互不影響。例子:函式宣告提升高於變數聲明//同時聲明變數a和函數avar a;function a() {} alert(typeof a);
Time of Update: 2017-01-19
No1.文法和類型 1.聲明定義 變數類型:var,定義變數;let,定義塊域(scope)本地變數;const,定義唯讀常量。 變數格式:以字母、底線“_”或者$符號開頭,大小寫敏感。 變數賦值:聲明但未賦值的變數在使用時值為undefined,未聲明的變數直接使用會拋異常。 未賦值變數作計算:結果為NaN。例如: var x, y = 1;console.log(x + y); //結果為NaN,因為x沒有賦值。
Time of Update: 2017-01-19
翻到了這篇解釋Javascript quiz的文章quiz-legend,反正沒事兒,就想搬過來供大家學習、理解、背誦、批判。問題一 (function(){ return typeof arguments;//"object"})(); arguments是一個Array-like對象,對應的就是傳入函數的參數列表。你可以在任何函數中直接使用該變數。typeof操作符只會返回string類型的結果。參照如下列表可知對應不同資料,typeof返回的值都是什麼:由此我們推斷出,typeof
Time of Update: 2017-01-19
一、變數的範圍要理解閉包,首先必須理解Javascript特殊的變數範圍。變數的範圍無非就是兩種:全域變數和局部變數。Javascript語言的特殊之處,就在於函數內部可以直接讀取全域變數。var n=999; function f1(){ alert(n); } f1(); // 999另一方面,在函數外部自然無法讀取函數內的局部變數。 function f1(){ var n=999; } alert(n); //
Time of Update: 2017-01-19
快速排序,又稱劃分交換排序。以分治法為策略實現的快速排序演算法。本文主要要談的是利用javascript實現in-place思想的快速排序分治法:在電腦科學中,分治法是建基於多項分支遞迴的一種很重要的演算法範式。字面上的解釋是“分而治之”,就是把一個複雜的問題分成兩個或更多的相同或相似的子問題,直到最後子問題可以簡單的直接求解,原問題的解即子問題的解的合并。(摘自維基百科)快速排序的思想數組中指定一個元素作為尺規,比它大的放到該元素後面,比它小的放到該元素前面,如此重複直至全部正序排列。快速排序
Time of Update: 2017-01-19
globalStorage 這個也是html5中提出來,在瀏覽器關閉以後,使用globalStorage儲存的資訊仍能夠保留下來,並且儲存容量比IE的userdata大得多,一個域下面是5120k。和sessionStorage一樣,域中任何一個頁面儲存的資訊都能被所有的頁面共用。 範圍 globalStorage['z.baidu.com'] 所有z.baidu.com下面的頁面都可以使用這塊空間 globalStorage['baidu.com']
Time of Update: 2017-01-19
1. 將迴圈次數的定義放到迴圈體外:這點好像所有的語言都是一樣的,在100個元素以上時效果越來越明顯。也就是說將for(var i=0;i<arrData.length;i++)修改為for(var i=0,len=arrData.length;i<len;i++)會很大地提高效能,因為它避免了每迴圈一次計算一下length的操作。另外,有老外宣稱,降序迴圈速度更快,即for(var
Time of Update: 2017-01-19
1.replace() 例: <script type="text/javascript"> var str="這個是text,下面還有一個text,這個text與那個text不相同"; document.write(str.replace(/text/g,"test"));//這個是把所有的text轉換成test var str1="這個是Text,下面還有一個Text,這個Text與那個Text不相同"; document.write(str1.replace(/text/gi,
Time of Update: 2017-01-19
方法一: 用的瀏覽器內部轉換器實現轉換,方法是動態建立一個容器標籤元素,如DIV,將要轉換的字串設定為這個元素的innerText(ie支援)||textContent(Firefox支援),然後返回這個元素的innerHTML,即得到經過HTML編碼轉換的字串,顯示的時候反過來就可以了(實際上顯示的時候不用通過轉換,直接賦值在div就可以正常顯示的)。 複製代碼 代碼如下:<script type="text/javascript"> function