亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

該課程提供的源碼里有用jquery寫的方案,有一段不理解,望有人解惑

function animate (offset) {

? ? ? ? ? ? ? ? var left = parseInt(list.css('left')) + offset;

? ? ? ? ? ? ? ? if (offset>0) {

? ? ? ? ? ? ? ? ? ? offset = '+=' + offset;

? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? else {

? ? ? ? ? ? ? ? ? ? offset = '-=' + Math.abs(offset);

? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? list.animate({'left': offset}, 300, function () {

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(left > -200){

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? list.css('left', -600 * len);

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(left < (-600 * len)) {

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? list.css('left', -600);

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? );

? ? ? ? ?}

http://img1.sycdn.imooc.com//5a5dfec30001dd1807100386.jpg

正在回答

1 回答

先解釋這兩行代碼:

offset = '+=' + offset;

offset = '-=' + Math.abs(offset);

在JavaScript里面,字符串+數字=字符串,( ?? ω ?? )

一開始,該函數接收到的offset為一個值,+600或-600,

這里的if…else…就是讓offset變成字符串“+=600”或“-=600”

為什么呢?

jQuery 動畫 - animate() 方法

語法:

$(selector).animate({params},speed,callback);

必需的 params 參數定義形成動畫的 CSS 屬性。

可選的 speed 參數規定效果的時長。它可以取以下值:"slow"、"fast" 或毫秒。

可選的 callback 參數是動畫完成后所執行的函數名稱。

↑ 說白了就是語法要求。


最后的兩個if判斷不用多說吧,就是把圖片歸位,因為一共有七張圖,其中第一張和最后一張都是假圖,

當掃到第一張“假圖”時歸位成圖⑤(第六張),當掃到最后一張“假圖”時歸位成圖①(第二張)。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

該課程提供的源碼里有用jquery寫的方案,有一段不理解,望有人解惑

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號