javascript時(shí)間排序算法實(shí)現(xiàn)活動(dòng)秒殺倒計(jì)時(shí)效果_javascript技巧_第1頁(yè)
javascript時(shí)間排序算法實(shí)現(xiàn)活動(dòng)秒殺倒計(jì)時(shí)效果_javascript技巧_第2頁(yè)
javascript時(shí)間排序算法實(shí)現(xiàn)活動(dòng)秒殺倒計(jì)時(shí)效果_javascript技巧_第3頁(yè)
javascript時(shí)間排序算法實(shí)現(xiàn)活動(dòng)秒殺倒計(jì)時(shí)效果_javascript技巧_第4頁(yè)
javascript時(shí)間排序算法實(shí)現(xiàn)活動(dòng)秒殺倒計(jì)時(shí)效果_javascript技巧_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、javascript時(shí)間排序算法實(shí)現(xiàn)活動(dòng)秒殺 倒計(jì)時(shí)效果制做一個(gè)活動(dòng)頁(yè)面秒殺列表頁(yè)需要一個(gè)時(shí)間的算法排序自c琢磨了半天想了 各種算法也沒(méi)搞出來(lái),后來(lái)問(wèn)了下一個(gè)后臺(tái)的php同學(xué)他寫(xiě)了個(gè)算法給我看了 下,剛開(kāi)始看的時(shí)候覺(jué)得這就是個(gè)純算法,不能轉(zhuǎn)化成頁(yè)面的dom效果,可是 再看了兩遍發(fā)現(xiàn)可以,于是我就改了改,實(shí)現(xiàn)了,先分享給大家。頁(yè)面需求是:從11點(diǎn)到20點(diǎn) 每隔一個(gè)小吋一場(chǎng)秒殺如果是當(dāng)前吋間就顯示正 在秒殺之前的商品就往最后排以此類(lèi)推類(lèi)似最開(kāi)始的 11 點(diǎn)順序是 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 (點(diǎn));到 12 點(diǎn)的順序是 12, 13, 14, 15

2、, 16, 17, 18, 19, 20, 11 (點(diǎn))到 13 點(diǎn)的順序是 13, 14, 15, 16, 17, 18, 19, 20, 12, 11 (點(diǎn))o o o o o最后的順序是 20, 19, 18, 17, 16, 15, 13, 12, 11 (點(diǎn))這是后臺(tái)同學(xué)的那個(gè)純算法function show_test(hour) "p = '13 dian',' 14 dian,,' 15 dian ', '16 dian,,' 17 diem' , ' 18 dian',' 19 d

3、ian',' 20 dian'console. log(,原順序是');console, log(p);date 二 new date ();curhour = date. gethours();pos 二 curllour - 13;/pos = hour;s ='活動(dòng)'+譏pos+"正在進(jìn)彳亍";console, log(s);desc二'當(dāng)前的順序應(yīng)該是;p. reverse ();console, log(pos);tmp 二for (i 二 0 ; i<pos; i+)tmp. push(p. pop

4、();p. reverse ();p 二 p. co neat (tmp. reverse ();console, log(desc);console, log(p); console. log(nn);調(diào)用var curllour二new date (). gctllours (); show_test(curhour);這個(gè)算法完美的實(shí)現(xiàn)所需要的那種需求所表述的樣子可是問(wèn)題來(lái)了怎么真正 的轉(zhuǎn)換為頁(yè)面,于是琢磨之后我將它完美實(shí)現(xiàn);首先定義一個(gè)包含了每個(gè)秒殺的商品的id和圖片的數(shù)組imgl是商品圖片 img2是秒殺時(shí)間img3是商品描述var data= id: 1,time: 11,imgl

5、: l. jpg ,img2:,zll. jpg,img3:z,lll. jpg", id:2,time:12, imgl :"2. jpg", img2:"22. jpg", img3:222jpg", id:3,time:13, imgl:"3 jpg", img2:,z33. jpg,z, img3: 333. jpg, id:4, time:14,-片imgl: 4 jpg , img2:44. jpg, img3:"444. jpg" , id:5, time: 15, imgl: 5

6、.jpg , img2:,z55. jpg,z, img3:,z555 jpg丿, id:6,time: 16, imgl: 6. jpg , img2:66 jpg, img3:666 jpg , id:7,time:17, imgl: 7. jpg , img2:z,77. jpg", img3:,z777 jpg" , id:&time: 18, imgl:& jpg", img2:88 jpg", img3:/z888. jpg" , id:9,time:19, imgl:9 jpg", img2:,z99.

7、jpg/z, img3:999. jpg , id: 10, time:20, imgl:,z10. jpg/z, img2:101jpg, img3:1010. jpg";對(duì)象數(shù)組排序function compare(propcrtyname) return function (objectl, object2) var valuel = objectlpropertyname; var value2 二 object2propertyname;if (value2 < valuel) return -1;else if (value2 > valuel) return

8、 1;else rcturn 0;因?yàn)楝F(xiàn)在的數(shù)組已經(jīng)變成了一個(gè)復(fù)雜的數(shù)組 所以排序要用到根據(jù)對(duì)象的某個(gè)屬性排序這歌方法這個(gè)方法在javascript高級(jí)程序設(shè)計(jì)里而冇捉到過(guò)function itemshow(hour)p=data;當(dāng)前時(shí)間curhour = hour;/對(duì)應(yīng)吋間的數(shù)組下標(biāo)pos = curllour - 11;if (posuo) 如果沒(méi)到11點(diǎn)就顯示最開(kāi)始的順序pos二0;jelse if (pos>=9) /如果超過(guò)20點(diǎn) 就完全倒序pos 二 9s ='活動(dòng)'+ ppos+正在進(jìn)行";console, log(s);/根據(jù)數(shù)組里的吋間這個(gè)

9、屬性反向排序p. reverse (compare c,time,/);consolc. log(pos);console, log(p);定義一個(gè)臨時(shí)數(shù)組存放過(guò)時(shí)的商品項(xiàng)tmp 二for (i 二 0 ; i<pos; i+)tmp. push(p pop ();/將剩余的再反相排序p. reverse (compare (,/time/,);將未到秒殺時(shí)間的商品項(xiàng)0與已經(jīng)過(guò)期的數(shù)組鏈接p = p.concat (tmpreverse (compare("time"); /console, log(desc);console, log(p);for(var i=0;

10、idata.1ength;i+) if (i=0) /正在秒殺$(. item") eq(0). append("img id二"+pi. id+")$( item") cq(0) append(z,img$( item") eq(0). appeelse$(". item") eq(i). append(z,img id二"+pi. id+)$(. item") eq(i). append("img$( item,/). cq(i) append(z,img sre二'+pi imgl+,z,sre二'"+killsccond_now jpg&

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論