技術很多,例子很多,只好慢慢學,慢慢實踐??!現(xiàn)在學的這本書是【JavaScript實戰(zhàn)----JavaScript、jQuery、HTML5、Node.js實例大全】
JavaScript、jQuery、HTML5、Node.js實例大全-讀書筆記2
3.3 響應鼠標動作
圖3-2的效果已經(jīng)有了,需要鼠標來操作展示想看的照片,這就需要在相應的地方加上事件。
3.3.1 響應小照片單擊動作
在3.2.3的代碼里提供了顯示小圖列表的eg.showThumb()方法,在單擊小圖片時要顯示大圖片,這需要調(diào)用eg.showBig()方法,只有在單擊小圖片的時候響應單擊事件才行,所以需要用eg.addListener()方法來實現(xiàn),具體代碼見【范例3-4】。
【范例3-4 響應小照片單擊動作】
1.eg.showThumb = function(group){ 2.var ul = eg.$("smallPhotosList"); 3.ul.innerHTML = ''; //每次顯示時要清空舊的內(nèi)容 4. var start = (group-1)*eg.groupSize; //計算需要的data數(shù)據(jù)的開始位置 5. var end = group*eg.groupSize //計算需要的data數(shù)據(jù)的結束位置 6. for(vari=start;(i<end&&i<eg.data.length);i++){ 7. var li = document.createElement("li"); 8. li.innerHTML = '<imgsrc="'+eg.data[i][1]+'" id="thumb'+i+'"width="80" height="40"/>'; 9. (function(i){ 10. eg.addListener(li,"click",function(){ //增加click事件監(jiān)聽 11. eg.showNumber = i; //記錄選中的圖標序號 供其他函數(shù)調(diào)用 12. eg.showBig(); 13. }); 14. })(i); //將i作為值傳遞進去 15. ul.appendChild(li); 16. } 17. }; 18. eg.showBig = function(){ //根據(jù)某個編號顯示大圖 19. eg.$("bigPhotoSrc").src =eg.$("thumb"+eg.showNumber).src.replace("thumb","photo") 20. };【范例3-4】中第9行就是響應小照片單擊動作的代碼,這里使用了一個閉包,即一個自調(diào)用的匿名函數(shù)。(function(){})()是最簡單的閉包。大括號的內(nèi)容會順序執(zhí)行。如果去掉第9行和第14行代碼,那么會發(fā)現(xiàn)始終顯示當前組照片中的最后1張,在for語句體里一般要用閉包把變量值傳到內(nèi)部的綁定事件里。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
網(wǎng)頁題目:JavaScript、jQuery、HTML5、Node.j-創(chuàng)新互聯(lián)
當前路徑:http://jinyejixie.com/article20/dseijo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設、網(wǎng)站設計、網(wǎng)站改版、動態(tài)網(wǎng)站、營銷型網(wǎng)站建設、品牌網(wǎng)站設計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)