Time of Update: 2017-01-19
複製代碼 代碼如下: var str = "123#abc"; var re = /abc/ig; console.log(re.test(str)); //輸出ture console.log(re.test(str)); //輸出false console.log(re.test(str)); //輸出ture console.log(re.test(str)); //輸出false
Time of Update: 2017-01-19
這種模式的作用在於確保對象屬性的真正私人化, 我們無法直接存取對象的狀態, 只能通過特權方法來進行操作. 下面直接來個例子吧. 複製代碼 代碼如下: var person = function(cfg) { var that = {}; that.getName = function() { return cfg.name || 'unknow name'; }; // 性別 預設男性 that.getGender = function() { return cfg.gender ||
Time of Update: 2017-01-19
本文是從 5 Reasons Your Javascript Stinks 這篇文章翻譯而來。 Javascript在互連網上名聲很臭,但你又很難再找到一個像它這樣如此動態、如此被廣泛使用、如此根植於我們的生活中的另外一種語言。它的低學習門檻讓很多人都稱它為學前指令碼語言,它另外一個讓人嘲笑的東西是動態語言的概念是偏偏使用了高標準的待用資料類型。其實,你和Javascript都站錯了立場,而現在,你讓Javascript很生氣。這裡有五個原因能說明你的Javascript技術很爛。 1.
Time of Update: 2017-01-19
瀏覽器為了確保正確執行指令碼和呈現布局在瀏覽器載入和執行完成它之前會完全阻塞頁面後續內容的呈現和其他資源的載入。
Time of Update: 2017-01-19
值得一提的是,當下Web開發人員們追捧的 Node.js 使得 JavaScript 能夠在更多環境下運行,甚至是網站的伺服器端,使得這門語言再次受到大家的關注。今天,本文與大家分享25個好玩的 JavaScript 小遊戲,感受一下 JavaScript 的魅力。Bunny HuntTraviansAjax Chinese ChessDigg AttackInvaders From MarsSolitaireCard GamesJetris – JavaScript
Time of Update: 2017-01-19
1. jQuery – Javascript FrameworkjQuery 是最流行的 JavaScript 架構,它簡化了HTML 文檔遍曆、事件處理、動畫和Ajax互動。2. Dojo Javascript FrameworkDojo強大的核心使Web開發更加敏捷,它擁有出色的UI工具庫,號稱 Unbeatable JavaScript Tools。3. Sencha Ext JS4
Time of Update: 2017-01-19
Question : 在IE 7中彈出頁面後,總是會顯示地址欄,而該地址欄是不希望在程式中出現的,況且也影響美觀。而在IE6中就不會出現地址欄。 Solution: 工具-->Internet 選項-->安全-->自訂層級-->允許網站開啟沒有地址欄或狀態列的視窗-->允許 這樣設定了IE7後就不會在快顯視窗中出現地址欄了。IE7以及後續版本預設不可以開啟不帶地址欄的視窗,這樣是為了安全起見。
Time of Update: 2017-01-19
var ie = !-[1,]; 這句代碼在IE9之前曾被稱為世界上最短的IE判定代碼。代碼雖短但確包含了不少javascript基礎知識在裡面。在這個例子中代碼執行時會先調用數組的toString()方法 ,執行[1,].toString()在IE6,7,8中將會得到“1,”。然後運算式就變為!-“1,”。再嘗試把“1,”轉換成數實值型別得到NaN
Time of Update: 2017-01-19
一、對象鏈:方法體內返回對象執行個體自身(this) 複製代碼 代碼如下: function ClassA(){ this.prop1 = null; this.prop2 = null; this.prop3 = null; } ClassA.prototype = { method1 : function(p1){ this.prop1 = p1; return this; }, method2 : function(p2){ this.prop2 = p2; return this; },
Time of Update: 2017-01-19
JS部分具體的代碼如下: 複製代碼 代碼如下: var getSiblingNode=function(className,elAr,el,not){ className=" "+className+" "; var Arr=[]; for(var i=0,l=elAr.length;i<l;i++){ if(elAr[i]!=el&&(elAr[i].nodeType===1)&&(" "+elAr[i].className+" ").indexOf(className)>-1&&
Time of Update: 2017-01-19
複製代碼 代碼如下: var Fundamental = {count:1}; function Test(){} Test.prototype = Fundamental; Test.prototype.increase = function(){this.count++;}; var test = new Test(); console.log(test.count); var test2 = new Test(); console.log(test2.count);
Time of Update: 2017-01-19
一、引子 複製代碼 代碼如下: var a = {n:1}; a.x = a = {n:2}; alert(a.x); // --> undefined 這是蔡蔡在看 jQuery源碼 時發現這種寫法的。以上第二句 a.x = a = {n:2} 是一個連續賦值運算式。這個連續賦值運算式在引擎內部究竟發生了什嗎?是如何解釋的? 二、猜想 猜想1:從左至右賦值,a.x 先賦值為{n:2},但隨後 a 賦值為 {n:2},即 a 被重寫了,值為 {n:2},新的 a 沒有
Time of Update: 2017-01-19
JS對象之Table表格對象(摘抄) Table對象集合Table對象:表示HTML文檔中的表,對於文檔中每個<table>標記,瀏覽器都建立一個Table對象.集合描述cells[]擷取包含表格中所有儲存格的數組js 取行中列 複製代碼 代碼如下: var tbodyObj = document.getElementById(tbodyID); tbodyObj.rows[rowID].cells[colID].innerText = "abcd";
Time of Update: 2017-01-19
(忘記是不是兩家郵箱都有這個功能)。 那這個功能是怎麼做的呢? 定時,我們知道怎麼弄,但儲存呢?也許我們會通過隱藏欄位等手段來存放資料。但是,這個卻有個缺點:那就是重新整理頁面後,資料將會丟失。 而此時,就該輪到我們很少關注,而且估計有不少人不知道的UserData 行為(userData Behavior)登場了: 而這個UserData是什嗎?怎麼用?,我將在文章最後轉載一篇介紹它的文章。 現在,我直接上例子,所謂無代碼,無真相嘛: 複製代碼 代碼如下: <!DOCTYPE html
Time of Update: 2017-01-19
1. document.form.item 問題 (1)現有問題: 現有代碼中存在許多 document.formName.item("itemName") 這樣的語句,不能在Firefox(Firefox)下運行 (2)解決方案: 改用 document.formName.elements["elementName"] (3)其它 參見 2 2. 集合類對象問題 (1)現有問題: 現有代碼中許多集合類對象取用時使用 (),IE 能接受,Firefox(Firefox)不能。 (2)解決方案:
Time of Update: 2017-01-19
行拖動的實現思路非常簡單,選中一行,往上拖就與上面的行交換位置,往下拖就與下面的行交換位置。問題是如何得到交換行。我見過一個非常詳細的教程,它會把表格裡的每一行的高度與Y座標計算出來,換言之,都時是比較e.pageX是否在[rowTop,rowBottom]區間之內。但這也帶來第二個問題,有多少行就有多個這樣的區間。於是解法就變成取事件來源對象,然後再往上取其父物件,如果其父物件是TR元素,就取其[rowTop,rowBottom]區間....思路非常直接,同時也客觀做出一個限制——不能使用代理
Time of Update: 2017-01-19
以人為鏡,可知得失,看來這句話是很有道理的。 Demo 1 : 如果是一個全域的function,則this相當於window對象,在function裡定義的各種屬性或者方法可以在function外部存取到,前提是這個function需要被調用。 複製代碼 代碼如下: <script type="text/javascript"> //在function中使用this function a() { if (this == window) { alert("this ==
Time of Update: 2017-01-19
這兩天嘗試寫個AjaxToolkit:AsyncFileUpload的Demo, 它有個OnClientUploadComplete屬性可以關聯用戶端JS, 於是可以寫OnClientUploadComplete="uploadComplete", 然後定義uploadComplete方法: 複製代碼 代碼如下: function uploadComplete(sender, e) { //Do something here... } 但是, 怎麼從e獲得上傳檔案的資訊呢?
Time of Update: 2017-01-19
上圖片素材先: 背景圖片:浮雲圖片: ←——————————這裡是有圖片D~ 全選就能看見了(因為背景是白的,雲也是白的嘛~)…… CSS代碼: 複製代碼 代碼如下: <style type="text/css"> * { margin: 0; padding: 0; } body { background: url("Images/body_bg.jpg") repeat center 0 fixed; } .cloud { background:
Time of Update: 2017-01-19
複製代碼 代碼如下: function Polygon(iSliders){ //定義一個多邊形 this.silders=iSliders; } Polygon.prototype.getArea=function(){ //為多邊形定義一個去的面積的方法 return 0; } function Triangle(iBase,iHeight){ Polygon.call(this,3); //繼承多邊形對象 this.base=iBase;