JQuery 開發筆記

2021-08-25 15:19:15 字數 2179 閱讀 2833

[b][size=medium]7.頁面js呼叫jquery後,對其返回物件的分析[/size][/b]

當引導完jquery的js檔案,jquery在他的js檔案**中,利用js匿名函式執行機制,將變數名為jquery的變數暴露給了整個頁面,是個全域性性變數。該變數指向乙個function,方法如下:

var jquery = function( selector, context ) ,

該方法呼叫jquery.fn.init方法,jquery.fn.init方法返回乙個this,這個this指向呼叫init方法的物件(即jquery.fn),最終返回給頁面的是jquery.fn物件。jquery.fn包含了自定義的一些方法,還包含了根據selector找到的html元素構成的陣列。jquery.fn物件向頁面遮蔽了它的父類jquery的內部方法,jquery.fn的一些方法會呼叫父類jquery的方法去完成主要邏輯。

[b][size=medium]6.jquery each方法[/size][/b]

each 方法會將迴圈當前jquery.fn物件中html元素陣列,將每個陣列物件作為callback的第乙個引數(即callback中this指向的物件),將陣列索引值和每個陣列物件作為第

二、第三個引數傳給callback(即callback中傳入引數的第

一、第二個引數)。

[b][size=medium]5.jquery.sheet 外掛程式分析[/size][/b]

jquery.sheet.js,完整專案參見附件:editor-0412.zip

[b]to-do:[/b]

公式內容的轉換原理

[b]done:[/b]

主要流程圖

指定json或html輸入源,將其傳給jquery.sheet外掛程式進行解析

在建立table的同時,會建立對應的乙個三維陣列,結構如下:

js.spreadsheets[sheet][row][col] = ;

切換單元格或標籤頁時,會呼叫calc方法對單元格全部進行重新賦值動作,calc呼叫updatecellvalue方法,updatecellvalue方法會把三維陣列中的值付給對應table中的單元格,主要目的是完成公式字面內容到公式實際效果內容的轉換。

在table中某乙個單元格輸入內容時,與js.obj.formula()聯動。js.obj.formula()位於**編輯區與工具欄之間的長形輸入框。這個動作在celleditdone方法中完成。

自己擴充套件外掛程式功能,在給單元格賦值時,需要向table的td和對應的三維陣列同時賦值。以便在切換單元格或標籤頁時,保證table的單元格內容正常顯示。

[b][size=medium]4. jquery指令碼檔案的語法分析[/size][/b]

[size=medium][b]4.1 jquery的載入執行[/b][/size]

(function(){})();

針對上面的這句**,前面的()就是乙個求值,括號內的值型別是function。 js裡面函式也是變數。 函式變數後面加括號,當然就是執行函式了。按照ecma 3.0規範,函式也是乙個物件,而「()」(寫在函式後面)則是運算子,表示「執行」。

[b][size=medium]3. jquery中$的處理[/size][/b]

$符號已經在jquery中被重新賦予了新的含義,它指向了jquery物件。參見第8373行,

window.jquery = window.$ = jquery;

jquery會在頁面上生成全域性的jquery函式物件,可以向jquery的構造器方法中傳入適當引數去執行。引數可以是乙個function物件、字串形式的頁面元素的選擇條件值等等。

[b][size=medium]2. jquery的擴充套件介面[/size][/b]

jquery 1.5.2實現自定義擴充套件介面的邏輯處理**在第309行的函式中,

jquery.extend = jquery.fn.extend = function()

[b][size=medium]1. tablesorter plugin[/size][/b]

如果不傳排序引數, tablesorter 預設所有被排序內容都是按照文字內容進行排序.

jQuery 外掛程式開發 筆記

color darkred size large jquery 外掛程式開發 b list 類級別開發,開發新的全域性函式 物件級別開發,給jquery物件開發新方法 list b size color size large b 一 類級別開發 b size 定義全域性方法 jquery.foo f...

Android 開發筆記

版本控制的注意事項 以下資料夾不要加入版本控制 bin bin是編譯的二進位制檔案的存放路徑 gen gen是android需要的資源檔案的原始檔存放的目錄 使用svn的時候要注意專案編譯的問題 在編譯的時候程式會把src資料夾裡面的檔案拷貝到bin裡面,但是svn是每個資料夾裡面都包含乙個隱藏的....

ORACLE 開發筆記

oracle 日期 submitdate datetime.parse submitdate tostring d m月 yyyy to date 2002 01 02 yyyy m dd select count 1 from l perm where cancel y and sysdate p...