麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

jQuery學習筆記之回調函數

2019-11-20 09:14:47
字體:
來源:轉載
供稿:網友

1.回調函數定義

回調函數就是一個通過函數指針調用的函數。如果你把函數的指針(地址)作為參數傳遞給另一個函數,當這個指針被用來調用其所指向的函數時,我們就說這是回調函數?;卣{函數不是由該函數的實現方直接調用,而是在特定的事件或條件發生時由另外的一方調用的,才會真正的執行回調函數內部的方法。

2.代碼

JS代碼

(function($){$.fn.shadow = function(opts){//定義的默認的參數var defaults = {copies: 5,opacity:0.1,//回調函數copyOffset:function(index){return{x:index,y:index};}};//將opts的內容合并到default中。var options = $.extend(defaults,opts);return this.each(function(){var $originalElement = $(this);//設置參數對象for(var i=0;i<options.copies;i++){var offset = options.copyOffset(i);$originalElement.clone().css({position:'absolute',left:$originalElement.offset().left + offset.x,top:$originalElement.offset().top + offset.y,margin:0,zIndex:-1,//設置參數對象opacity:options.opacity}).appendTo('body');}});};})(jQuery);$(document).ready(function(){$('h1').shadow({copies:5,copyOffset:function(index){return {x:-index,y:-2 * index};}});});

3.分析

通過這段代碼調試的時候進入的順序,便可理解回調函數的機制。通過對黃背景的四段代碼加入斷點。程序將會以以下的順序運行

39:先跑第39行,當DOM加載完畢后運行了shadow(),跑完39行并不會直接跑40行。而是直接調到了shadow()函數定義的地方。在這里只是聲明了copyOffset的函數指針。

2:這時候查看opts里面的內容Object { copies=5, copyOffset=function()}從這里可以看出來copyOffset只是一個function(),

8:開始走默認參數的copyOffset,與39行一樣,不會直接進入回調函數里面的內容。

19:走到這里時,需要將對CopyOffset發出請求并傳入了i作為參數。這時候i就是回調函數的參數index。

40:由于13行的”var options = $.Extend(defauflts,opts)”。opts的屬性會覆蓋掉default的屬性,所以不會走9行默認的參數中的回調函數的執行方法,而是走了第40行的回調函數的方法。

4.總結

從上面的分析可以看出,回調函數在參數中聲明時,相當于只是聲明了一個委托。等到用到這個參數的時候才會真正的執行回調函數里面的內容。

5.附html代碼

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Developing Plugins</title><link rel="stylesheet" href="08.css" type="text/css" /><link rel="stylesheet" href="ui-themes/smoothness/jquery-ui-1.10.0.custom.css" type="text/css" /><script src="jquery.js"></script><script src="jquery-ui-1.10.0.custom.min.js"></script><script src="08.js"></script></head><body><div id="container"><h1>Inventory</h1><table id="inventory"><thead><tr class="two"><th>Product</th><th>Quantity</th><th>Price</th></tr></thead><tfoot><tr class="two" id="sum"><td>Total</td><td></td><td></td></tr><tr id="average"><td>Average</td><td></td><td></td></tr></tfoot><tbody><tr><td><a href="spam.html" data-tooltip-text="Nutritious and delicious!">Spam</a></td><td>4</td><td>2.50</td></tr><tr><td><a href="egg.html" data-tooltip-text="Farm fresh or scrambled!">Egg</a></td><td>12</td><td>4.32</td></tr><tr><td><a href="gourmet-spam.html" data-tooltip-text="Chef Hermann's recipe.">Gourmet Spam</a></td><td>14</td><td>7.89</td></tr></tbody></table></div></body></html>

以上所述是小編給大家介紹的jQuery學習筆記之回調函數,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 福利在线免费 | 久久国产精品影视 | 欧美日韩精品一区二区三区蜜桃 | 日本黄色一级毛片 | 国产精品久久久久久模特 | 亚洲aⅴ免费在线观看 | 色悠悠久久久久 | 二区视频 | 亚洲国产一区二区三区 | 欧日韩 | 特级黄色一级毛片 | 久久欧美亚洲另类专区91大神 | 免费一级特黄做受大片 | 人成免费网站 | 亚洲性生活免费视频 | 毛片在线视频免费观看 | 亚洲电影在线观看高清免费 | 色播视频网站 | 久久影院一区二区三区 | 国产 视频 一区二区 | 精品一二三区视频 | 91成人午夜性a一级毛片 | 黄色av免费电影 | av在线浏览 | 国产五区 | 国产精品久久久久影院老司 | 性欧美大战久久久久久久免费观看 | 国产大片在线观看 | 久久av一区二区 | 毛片视频播放 | hd极品free性xxx一护士 | 国产91一区二区三区 | 92看片淫黄大片一级 | 色av成人天堂桃色av | 欧美黑大粗硬毛片视频 | 成人福利在线免费观看 | 双性精h调教灌尿打屁股的文案 | 国产精品自在线拍 | 日本人乱人乱亲乱色视频观看 | 2019中文字幕在线播放 | 国内精品久久久久久久星辰影视 |