1. 程式人生 > >Jquery程式碼組織方法優化

Jquery程式碼組織方法優化

關於jQuery的程式碼,以前都是直接取節點,綁事件一把梭,但是這樣子會使程式碼很亂不方便維護。

今天介紹一個新的程式碼組織形式

實現看原始碼

    $(function () {
        //切換bananer
        $('.bar-item').click(function () {
            $(this).attr('class', "bar-item bar-cur").siblings().attr('class', "bar-item")
            $(".banner a").eq($(this).attr("index")).fadeIn(1800).siblings().fadeOut();
        })
    })

原始碼就是很簡單的這樣一個操作,這樣看起來也沒什麼問題,但是當我們的頁面有很多個DOM節點需要操作時,如果程式碼還是這樣寫就會顯得很亂,下面進行程式碼組織優化

var index = {
    // 初始化
    init: function () {
        var me = this
        me.target()
        me.created()
        me.render()
    },

    // 相關DOM節點儲存
    target: function () {
        var me = this;
        me.barItem = $('.bar-item') // banner切換按鈕 
    },

    // 頁面初始化資料獲取
    created: function () {
        var me = this;
    },

    // 事件繫結
    render: function () {
        var me = this
        // 切換banner事件
        me.barItem.click(function () {
            $(this).attr('class', "bar-item bar-cur").siblings().attr('class', "bar-item")
            $(".banner a").eq($(this).attr("index")).fadeIn(1800).siblings().fadeOut();
        })
    }
}

$(function () {
    index.init();
});

這種寫法大家應該都是不陌生髮,防止了變數汙染,而且集中管理變數、事件方便後期維護

相關推薦

Jquery程式碼組織方法優化

關於jQuery的程式碼,以前都是直接取節點,綁事件一把梭,但是這樣子會使程式碼很亂不方便維護。 今天介紹一個新的程式碼組織形式 實現看原始碼 $(function () { //切換bananer $('.bar-item').

不修改程式碼就能優化ASP.NET網站效能的一些方法

目錄 配置OutputCache 啟用內容過期 解決資原始檔升級問題 啟用壓縮 刪除無用的HttpModule 其它優化選項 本文將介紹一些方法用於優化ASP.NET網站效能,這些方法都是不需要修改程式程式碼的。 它們主要分為二個方面: 1. 利用ASP.NET自身的

Keil優化程式碼大小方法

如圖 1,未進行任何優化時,keil編譯生成的檔案大小為:9668位元組。 第一步:project >> Option for Target “**” 開啟如圖 2介面。選擇“target”,勾選上“Use MicroLIB”再編譯。

jquery中prop()方法和attr()方法的區別淺析

clas ttr over dex idt pro query selected accesskey jquery1.6中新加了一個方法prop(),一直沒用過它,官方解釋只有一句話:獲取在匹配的元素集中的第一個元素的屬性值。 大家都知道有的瀏覽器只要寫disabled,c

JQuery中$.ajax()方法參數詳解(轉載)

瀏覽器 object 服務器 字符串 false type: 要求為String類型的參數,請求方式(post或get)默認為get。註意其他http請求方法,例如put和 delete也可以使用,但僅部分瀏覽器支持。timeout: 要求為Number類型的參數,設置請求超時時

jQuery的ajax方法

jsonp on() ajax 格式 scrip err 異步 數據 true $.ajax({ url:‘/comm/test1.php‘, type:‘POST‘, //GET async:true, //或false,是否異步 d

jQuery 事件 bind() 方法

red 分隔 額外 事件處理程序 ack brush bsp 運行 映射 bind() 方法為被選元素添加一個或多個事件處理程序,並規定事件發生時運行的函數。 $(selector).bind(event,data,function)//語法 event必需。規定添

JavaScript教程之jQuery - AJAX load() 方法

ash pre var 段落 相關 對象 esc 選擇 none jQuery - AJAX load() 方法 jQuery load() 方法 jQuery load() 方法是簡單但強大的 AJAX 方法。 load() 方法從服務器加載數據,並把返回的數據放入被選

跨域問題相關知識詳解(原生js和jquery兩種方法實現jsonp跨域)

syn con 加載 developer 兩種方法 ray exe 編寫 分組 1、同源策略 同源策略(Same origin policy),它是由Netscape提出的一個著名的安全策略。同源策略是一種約定,它是瀏覽器最核心也最基本的安全功能,如果缺少了同源策略,則瀏覽

Jquery獲取元素方法

strong 大小寫 element tex 一個 類選擇器 ast id選擇器 選擇 Jquery 獲取元素的方法分為兩種:jQuery選擇器、jQuery遍歷函數。 1、獲取本身:  a.只需要一種jQuery選擇器 選擇器 實例 說明 #Id $(‘#

jQuery的.on方法

tro 定義 paragraph cli one event tip put ont jQuery on()方法是官方推薦的綁定事件的一個方法。 $(selector).on(event,childSelector,data,function,map)由此擴展開來的幾個以

jQuery - DOM 元素方法

但是 html ron sel toa 點擊 實例 rip 選擇 jQuery DOM 元素方法 - get() 方法 實例 獲得第一個 p 元素的名稱和值: <script type="text/javascript"> $(document).ready

jQuery ajax - serialize() 方法

ack rst java rip 定義 asc ext log 字符 定義和用法 serialize() 方法通過序列化表單值,創建 URL 編碼文本字符串。 您可以選擇一個或多個表單元素(比如 input 及/或 文本框),或者 form 元素本身。 序列化的值可在

javascript實現jQuery的trigger方法 .

init fire light event jquery trigge 方法 div eat function trigger(elem,event){ if(document.all) { elem.fireEvent("on" + event); }

jquery中prop()方法和attr()方法的區別

nbsp editable isa dex rop 效應 元素 body att jquery1.6中新加了一個方法prop(),一直沒用過它,官方解釋只有一句話:獲取在匹配的元素集中的第一個元素的屬性值。 大家都知道有的瀏覽器只要寫disabled,checked就可以了

jQuery中animate()方法以及$('body').animate({"scrollTop":top})不被Firefox支持問題的解決

query scroll ani 應該 以及 jquery 方法 jquer ref $("body").animate({"scrollTop":top}): 只被chrome支持,而不被Firefox支持 $("html").animate({"scrollTop":t

50種方法優化SQL Server數據庫查詢

commit 很多 ltp 內存不足 方式 else 嚴重 詳細 字段 新的關於數據庫的內容。查詢速度慢的原因很多,常見如下幾種: 1、沒有索引或者沒有用到索引(這是查詢慢最常見的問題,是程序設計的缺陷) 2、I/O吞吐量小,形成了瓶頸效應。 3、沒有創建計算列導致

JavaScript自執行函數和jquery擴展方法

script 可用 選擇 由於 作用域 有時 掌握 特性 jquery選擇器   我們通常將JS代碼寫在一個單獨的JS文件中,然後在頁面中引入該文件。但是,有時候引入後會碰到變量名或函數名與其它JS代碼通途的問題。那麽如何解決這個問題呢?作用域隔離。在JS中,作用域是通過函

JQuery中$.ajax()方法參數詳解

返回 自動轉換 time err last 需要 可選 修改 方式 url: 要求為String類型的參數,(默認為當前頁地址)發送請求的地址。 type: 要求為String類型的參數,請求方式(post或get)默認為get。註意其他http請求方法,例如put和

jQuery的$.getScript方法去加載javaScript文檔解析

htm 是個 div 我不 加載 文件 click spa value 1.兩個文件的代碼如下: <script> function Ajax(){ //將9-4.html中的Ajax()函數進行修改 $.getScript(‘9-8.js‘,fun