Time of Update: 2013-12-01
一共三種寫法 如下: view sourceprint?for (var i = 0; i < arr.length; i++) view sourceprint?for (var i in arr) view sourceprint?for (var i = 0, len = arr.length; i < len;
Time of Update: 2013-12-01
前一篇中我們講到,Javascript中任何對象o instanceof Object,都會返回true,因此,從這個層面來看,我以認為Javascript中一切都是對象。但是Javascript並不是一種完全物件導向的程式設計語言,因此對於單一資料型別,我們這樣的討論並沒有太大的意義。我們這裡所說的對象,主要是指一些複雜的對象,包括函數對象。我們先從最常見的說起,varo =
Time of Update: 2013-12-01
使用this 和prototype,可以實現JavaScript的對象化編程,構建類和執行個體的概念。首先類是對象的抽象,執行個體則是實際的對象,用關鍵字new可以執行個體化對象。 this用於從執行個體本身的程式碼內訪問執行個體,prototype對象用於設定隸屬於類層(class level)的特性和方法,而非隸屬於執行個體的。讓方法可以儲存於類內部,以免執行個體不必要地一直複製程式碼。 以下是一個簡單的實現: <html><head>&
Time of Update: 2013-12-01
我們都知道,AJAX的一大限制是不允許跨域請求。 不過通過使用JSONP來實現。JSONP是一種通過指令碼標記注入的方式,它是可以引用跨域URL的js指令碼,不過需要提供一個回呼函數(必須在您自己的頁面上),因此,你可以自己處理結果。 讓我們看看JSONP的是怎麼在jQuery,MooTools的,Dojo
Time of Update: 2013-12-01
因為gridpanel定義了拖拽 所以致使選中gridpanel的資料行 就不能取消了作如下擴充:Ext.grid.RowSelectionModel.override({ // FIX: added this function so it could be overrided in CheckboxSelectionModel handleDDRowClick: function(grid, rowIndex,
Time of Update: 2013-12-01
jQuery的each 方法中的this指標指向問題,這個是昨天工作中遇到的問題jQuery.each 寫法:1 :Java代碼 jQuery('input[type=checkbox]').each(function (){ alert(this.checked+this.treeId);//treeI的是自訂屬性
Time of Update: 2013-12-01
最近要用到一個js日曆,是那種顯示在頁面上的,而不是快顯視窗的,網上搜尋,大多是快顯視窗的. 有一些部落格,像blogjava用的日曆就是我想要的類型,粗看一下,都和html高耦合,用起來不方便,所以決定自己寫一個簡單的日曆. 說簡單,但至少要實現以下幾點:1.與html代碼解耦// 這種方式使用,與html代碼解耦var calendar = new Calendar();window.onload =
Time of Update: 2013-12-01
離上一篇好幾天了. 完善了一下: 1.瀏覽器安全色(IE,Firefox,Chrome) 2.添加一個日期點擊事件引入CSS(皮膚)<link rel="stylesheet" type="text/css"
Time of Update: 2013-12-01
/**************************************************************************************//*************************************數位驗證*****************************************//*****************************************************************************
Time of Update: 2013-12-01
函數是JS裡很神奇的一位童鞋。那麼如何建立一個函數呢?簡單來說有下面幾種形式: 1、定義式 function a() {} 2、聲明式 var a = function() {}; // 把一個匿名函數賦給一個變數 3、建構函式 var a = new Function(); //
Time of Update: 2013-12-01
javascript 定義對象的方式,有6 種:1.1在已有對象上添加屬性 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html
Time of Update: 2013-12-01
進行JavaScript重構時,我希望引入便於使用的測試架構來保證重構的順利進行,未來能持續通過測試代碼對JavaScript邏輯的正確性做保障。JsUnit
Time of Update: 2013-12-01
產品做到一定程度,JavaScript不僅僅需要幾個層面上的重構,而需要將這些合理的、零散的重構整合起來、系統化,最終形成一套適合自己產品的前端架構。以某套產品的前端架構為例,包含了這麼幾個組件:1、通用工具組件,提供了UI組件最基礎的通用能力,包括:日誌、緩衝、資料共用、資料非同步載入、原生對象擴充、Ajax產品定製化等等。2、共用UI組件,包括:通用彈出框、通用按鈕等。3、產品基礎模組,在所有頁面均載入該JS,包括:評論模組、打分模組、基本資費模組、下載模組、播放模組等等。4、擴充產品模組,
Time of Update: 2013-12-01
首先實現Array的remove方法: Map的實現基於array , 此代碼是借一達人寫的,我測試的時候,map 的remove 方法不能使用,所以就寫了上面array.remove方法view plaincopy to clipboardprint?function Map() { /** 存放鍵的數組(遍曆用到)
Time of Update: 2013-12-01
既然要寫JS,必須要遵循一定的編程規範吧。以下是來自Google的JS語言規範,直接翻譯過來的(可參考英文原版)。 1,變數:大部分情況下請使用var聲明 如果不顯示使用var,這個變數就會被附著在全域上下文中,可能引起重名的衝突。而且,如果不使用var聲明,也 很難分辨這個變數的範圍(如:可能附著在Document或Window對象上,也可能附著在局部變數上)。所以,大部 分情況下使用var來聲明變數。 當然,如果申請一
Time of Update: 2013-12-01
學習Javascript斷斷續續也有十幾天了,總結一下為自己也為別人。Javascript給我的整體印象就是很“隨便”,這種印象緣起於它的物件導向。當然Javascript的靈活性也註定了它是一個隨便的語言。Javascript的文法特性Javascript是一門動態,弱類型的,基於原型的指令碼語言。我們在一些網站上的一些漂浮效果(雖然很討厭),圖片轉場效果,還有一些文字編輯器等等,這都要歸功於Javascript。當然Javascript又是一個徹底的物件導
Time of Update: 2013-12-01
/*** 滾動廣告(連結)外掛程式** 因網站需要寫了這個"jq外掛程式",我也不清楚符不符合jq外掛程式的標準,反正是能用了^^^** 顯示清單項目時使用的效果是jq的fadeIn,如果想定製這個行為,執行以下代碼* rollbar.setShowHandler(function(currentItem){}); * 其中currentItem是將要顯示的元素的jq對象執行個體** 通過調用$
Time of Update: 2013-12-01
jQuery的事件模組是較複雜的,前面僅僅提到了對事件對象的封裝。即統一了一些相容性的問題。這篇會綜述下jQuery的整個事件模組。後面會詳細分析jQuery.event.add/jQuery.event.remove/jQuery.event.trigger。雖然事件模組代碼很難讀,但其提供的API介面還是很清晰的。如下1 添加事件(bind/one/live/delegate/hover/toggle)bind 基本的添加事件函數。one 添加只執行一次的事件函數。live
Time of Update: 2013-12-01
屬性操作主要介紹prop、attr、val三個介面的實現,相對於其他的介面,這三個的源碼實現複雜,更容易讓人混淆,一不小心就回使用錯誤的介面或返回錯誤的值,因此重點分析。 9.1 .prop() vs .attr() 9.1.1
Time of Update: 2013-12-01
根據後台返回的json資料,動態產生複選框。1、首先定義了存放複選框的fieldsetElementCheckBox=Ext.extend(Ext.form.FieldSet,{id:'_fieldset',constructor:function(){ElementCheckBox.superclass.constructor.call(this,{layout:'column',xtype:'checkboxgroup',title