在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/網(wǎng)絡(luò)安全  HTML/ 如何使用requestAnimationFrame實(shí)現(xiàn)降價效果?

如何使用requestAnimationFrame實(shí)現(xiàn)降價效果?

<span class="price" data-price="123.59" data-starttime="1509809876">123.59</span>
<span class="price" data-price="255.76" data-starttime="1509810123">255.76</span>

列表頁面中有多個類似以上形式的的,每秒降價0.1元,那么span內(nèi)的數(shù)字就不斷的變小,目前遇到的問題是每次只能實(shí)現(xiàn)第一條價格會動起來,后面的都不動,另外一個困擾是,我使用了settimeout來不斷獲取當(dāng)前時間和data-starttime判斷降價時間是否開始了,導(dǎo)致requestAnimationFrame的動畫平率越來越快

求大神指點(diǎn)

回答
編輯回答
綰青絲

不解,這種DOM操作,更新頻率不大,一般用不到requestAnimationFrame,直接通過setInterval(func, 1000)不可以嗎?

針對只有第一條價格會動,可能是DOM查詢的不對。

用jq的話,大概代碼如下:

setInterval(function() {
    var time = new Date().getTime()
    $('.price').each(function() {
        if(time > $(this).attr('data-starttime')) {
             $(this).text(parseInt($(this).text()) - 0.1);
        }
    })
}, 1000)
2018年4月1日 10:36