首頁 > web前端 > js教程 > 主體

商品下架特效製作:定時器,倒數計時,抖動特效程式碼

零下一度
發布: 2017-06-26 13:27:46
原創
1901 人瀏覽過




   
    ;標題標題> <br>    <br>        .clear:after {<br>            內容: '';<br>            }<br> ul {<br>            列表樣式:無;<br>            邊距:100px auto 0;<br>            填充:0;<br>#    心#000;<br>     }<br>          li {<br>內邊距:10px;<br>            浮動:左;<br>            寬度:300px;<br>      #   寬度:300px;<br>      # div {<br>           文字對齊:置中; <br>        }<br>        li div:nth-of-type(2) {<br>            邊距: 20px 0;<br>      :nth-of-類型(2)跨度{<br>            內邊界:10px;<br>            背景:#e15671;<br>              }<br>        .text1 {<br>寬度: 240px; <br>        }<br>        li div:nth-of-type(3) {<br>            內邊距: 20px;<br>         行高: 40px;<br>        } <br>        .img {<br>            寬度: 100px;<br>             高度: 140px;# c            位置: 絕對;<br>          左:-38px;<br>            -左:61px;<br>#            上方:0;<br>            -上方:76px;<br>        1 寬度為寬度:396 寬度#            右:396px;<br>            -高度: 198px;<br>            不透明度: 0;<br>            顯示:無;<br>            #            寬度: 100%;<br>           高度:100 %; <br>            位置:絕對;<br>            左:0;<br>               背景:rgb(0,0,0);<br>          不透明度: 0 ;<br>            顯示:無;<br>        }<br>        /*li .sold_out {*/<br>  84px;*/<br> /*上方: 134px;*/<br>            /*寬度: 132px;*/<br>            /*高度: 132px;*/##<p>.table {<br>            margin: 30px auto 0;<br>            width: 1300px;<br>        }<br>        tbody tr {<br>            opacity: 0;<br>        }<br>        tbody img {<br>            width: 50px;<br>            height: 50px;<br>        }<br>    </style><br></head></p> <p><body></p> <p><ul class="clear"><br>        <li><br>            <div><br>                <input type="text" class="text1"><br>                <button>确定</button><br>            </div><br>            <div class="time"><br>                剩余:<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>            </div><br>            <div><br>                <img class="img" src="images/goods_1.png" alt=""><br>            </div><br>            <div><br>                <strong class="goods_name">iphone6s</strong><br>            </div><br>            <div><br>                抢购价:<span class="goods_price">¥ 6000</span><br>            </div></p> <p><img class="sold_out" src="images/sold-out.png" alt=""><br>            <div class="mask"></div><br>        </li><br>        <li><br>            <div><br>                <input type="text" class="text1"><br>                <button>确定</button><br>            </div><br>            <div class="time"><br>                剩余:<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>            </div><br>            <div><br>                <img class="img" src="images/goods_2.png" alt=""><br>            </div><br>            <div><br>                <strong class="goods_name">iMac</strong><br>            </div><br>            <div><br>                抢购价:<span class="goods_price">¥ 19999</span><br>            </div></p> <p><img class="sold_out" src="images/sold-out.png" alt=""><br>            <div class="mask"></div><br>        </li><br>        <li><br>            <div><br>                <input type="text" class="text1"><br>                <button>确定</button><br>            </div><br>            <div class="time"><br>                剩余:<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>            </div><br>            <div><br>                <img class="img" src="images/goods_3.png" alt=""><br>            </div><br>            <div><br>                <strong class="goods_name">ipod</strong><br>            </div><br>            <div><br>                抢购价:<span class="goods_price">¥ 1000</span><br>            </div></p> <p><img class="sold_out" src="images/sold-out.png" alt=""><br>            <div class="mask"></div><br>        </li><br>        <li><br>            <div><br>                <input type="text" class="text1"><br>                <button>确定</button><br>            </div><br>            <div class="time"><br>                剩余:<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>                :<br>                <span>0</span><br>                <span>0</span><br>            </div><br>            <div><br>                <img class="img" src="images/goods_4.png" alt=""><br>            </div><br>            <div><br>                <strong class="goods_name">iWatch</strong><br>            </div><br>            <div><br>                抢购价:<span class="goods_price">¥ 2000</span><br>            </div></p> <p><img class="sold_out" src="images/sold-out.png" alt=""><br>            <div class="mask"></div><br>        </li><br>    </ul></p> <p><div class="table"><br>        <table width="1300" border="1"><br>            <thead><br>            <tr><br>                <th>商品</th><br>                <th>价格</th><br>                <th>图片</th><br>            </tr><br>            </thead><br>            <tbody></tbody><br>        </table><br>    </div></p> <p><script src="animation.js?1.1.11"></script></p> <p><script></script></p> <p>var liElements = document.querySelectorAll ('li' );<br>        var tbodyElements = document.querySelector('.table tbody');</p> <p>liElements.forEach(function (li) {<br>            soldOut(li); <br>#function sellOut(li) {</p>            /*<p>             * 其中給予一個li一個邏輯處理<br>   Selector('button ');<br> var text1Element = li.querySelector('.text1');<br>            var maskElement = li.querySelector('.mask');<br>            var.   var timeSpanElement = li.querySelectorAll('.time span');<br><br>vargoodsName = li.querySelector('.goods_name').innerHTML;<br>            vargoodsPrice = li.hquerySelector(' .goodinvarsPrice; ##            var GoodsImg = li.querySelector('.img').src;<br></p>/*<p>                buttonElement.onclick = function( ) {<br>                var times = parseInt(text1Element.value);<br></p>/*<p>            #        var timeArr = setInterval(function () {<br>                    秒--;<br>##if (秒>= 0) {<br>       '' 從秒 2099999999999% <br></p>timeArr.forEach(function (item, index) {<p>                            time  );<br>                    } else {<br>                     arInterval(timer );<br>                        timeOver();<br>               }</p> <p><br>                }, 1000);</p> <p><br>            };<br><br>            };<br><br>function timeOver() {<br>                maskElement.style.display = 'block';<br>//          , { <br>                    不透明度: 0.5</p>                }, 500);<p><br>soldOutElement.style.display = 'block';</p>#           寬度:198,<p>                    高度: 198,<br>                   左: 61,</p>                    上方: 76,<p>                   與選擇 1, 10,0,0,0 )> <br>##setTimeout(function () {<br>                    搖晃(li, ' left', 20, 2);<br>                }, 200);<br>           }<br>##o/*</p>     * * /<p>            函數add2List() {<br></p> <p>tbodyElements.innerHTML += '<tr><td>'+goodsName+'</td><td>'+goodsPrice+'</td><td><img src="' +goodsImg+'"/></td></tr>';</p> <p>var trElements = tbodyElements.querySelectorAll('tr');<br>                目前最新一次新增的元素<br>//                console.log(trElements[trElements.length - 1]);<br>//                   opacity: 1 <br>//                }, 100);<br></p>trElements.forEach(function (tr) {<p>                      opacity: 1<br>                    }, 100);<br> }, 1000);<br><br>}</p>        }<p><br></p>        /*<p>#        * 將秒鐘轉換為時分格式為 秒#  (seconds) {<br><br>var H = addZero(parseInt(seconds / 3600));<br>            var M = addZero(parseInt(seconds % 3600 / 60)) 對# 是(seconds % 60));<br></p>return H + M + S;<p>        }<br><br>function addZero(v) {</p>            return (v <) 10 ? '') + v;<p>        }<br></p>/*<p>        * 顫抖! <br>        * */<br>        function shake(element, attr, range, step) {</p> <p>/*<br>           1 <br>/*<br>           ?         var originValue = getCss(element, attr);</p>            /*<p>            * 表示+或-<br>    #var timer = setInterval(function () {<br><br>if (flag) {<br>                    //先負<br>                    } else {<br>                    element.style[ attr] = originValue + range + 'px';<br>                    //自減</p>                           element.style[attr] = originValue + 'px';<p>                        clearInterval(timer);</p>        <p>#flag = !flag;<br><br>}, 16);<br><br>}<br><br>function getCss(element, attr) {</p>            return parseFloat(element.currentStyle ? element.currentStyle[M ;/script><p></body><br></html><br><br>function animation(ele, attrs, duration, fx, callback) {<br></p>#if (ele. timer) {<p>        return;</p>    }<p>    var d = duration || 1000;</p>    var obj = {==<p> = {};</p>        obj[attr].b = parseFloat(getComputedStyle(ele)[attr]);           obj[attr].c = attrs[attr] - objatt#r. <p>#var fx = fx || 'linear';<br>    var callback = callback || function(){};<br><br>var startTime = Date.now();<br><br># ele.timer = setInterval(function () {</p> <p>var t = Date.now() - startTime;</p> <p>if (t >= d) {<br>            t = d;<br>        }<br>##for (var attr in attrs) {<br>            var value = Tween[fx](t, obj[attr].b, obj[attr]#.c, d);</p> <p>if (attr == '不透明度') {<br>                ele.style[attr] = value;<br>            } else {<br>            } else {<br>#   style   ;<br> }</p>        }<p><br>if (t == d) {<br>            clearInterval(ele.timer);<br>            } <br>##}, 16);</p>#}<p></p> <p>var Tween = {<br>    linear: function (t, b, c, d){  //勻速率<br>        return c*t/d + b;<br>    },##  return c*t/d + b;<br>    },##   unction ( t, b, c, d){  //加速曲線<br>        return c*(t/=d)*t + b; //t/=d   ​​t = t / d<br>    },<br>    easeOut: function(t, b, c, d){  //減速曲線<br>        return -c *(t/=d)*(t-2) + b;<br>    },<br>  unc  easeBoth: ftion(t , b, c, d){  //加速減速曲線<br>        if ((t/=d/2) < 1) {<br>            return c/2*t*t + bo;<br>#        return -c/2 * ((--t)*(t-2) - 1) + b;<br>    },<br>    easeInStrong: function(t, b, c, d){  //加加速曲線<br>        return c*(t/=d)*t*t*t + b;<br>    },<br>    easeOutStrong: function(t, b, c, d){  //減速曲線<br>        return -c * ((t=t/d-1)*t*t*t - 1) + b;<br>    },<br>    easeBothStrong: function(t, b, c, d){  / /加加速減速曲線<br>        if ((t/=d/2) < 1) {<br>            return c/2*t*t*t*t + b;## -c/2 * ((t-=2)*t*t*t - 2) + b;<br>    },<br>    elasticIn: function(t, b, c, d, a, p){  / /正弦衰減曲線(彈動漸進)<br>        if (t === 0) {<br>            return b;<br>        }<br>  return b;<br>       #            return b+c;<br>        }<br>        if (!p) {<br>        . (!a || a < Math.abs(c) ) {<br>            a = c;<br>            var s = p/4;<br>        } else {<br>            var s = p/(2*Math.PI) * Math.asin (c/a); <br>        }<br>        return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;<br>    },<br>    elasticOut: function(t, b, c, d, a, p){    //正弦增強曲線(彈動漸出)<br>        if (t === 0) { <br>            return b;<br>        }<br>        if ( (t /= d) == 1 ) {#>     if (!p) {<br> p=d*0.3;<br>        }<br>        if (!a || a < Math.abs(c)) {<br>        } else {<br>            var s = p/(2*Math.PI) * Math.asin (c/a);<br>        }<br>              }<br>        return a Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;<br>    },<br>    elasticBoth: function(t, b, c, d, a, p){ <br>        if (t === 0) {<br>            return b;<br>        }<br>    c;<br>        }<br>        if (!p) {<br>            p = d*(0.3*1.5);## # #            a = c;<br>            a = c;<br>            var s = p/4;<br>        }<br>   .asin (c/a);<br>        }<br>        if (t < 1) {<br>            return - 0.5*(a*Math.pow(2,10*(t-1) * 0.5*(a*Math.pow(2,10*(t-1) * (t* d-s)*(2*Math.PI)/p )) + b;<br>        }<br>        return a*Math.pow(2,-10*(t-=1)) *<br>        ( (t*d-s)*(2*Math.PI)/p )*0.5 + c + b;<br>    },<br>    backIn: function(t, b, c, d, s){     //回退加速(回退漸進)<br>        if (typeof s == 'undefined') {<br>            s = 1.70158;<br>#       }<br>        回傳 c*(t/=d)*t*((s+1)*t - s) + b;<br>    },<br>    backOut: 函數(t, b, c, d, s){<br>        if (typeof s == '未定義') {<br>            s = 3.70158;  //回縮的距離<br>        }<br>        return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;<br>#    } ,<br>    backBoth: function(t, b, c, d, s){<br>        if (typeof s == 'undefined') {<br>        #  if (( t /= d/2 )            返回c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;<br># } <br>        返回c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;<br>    },<br> bounceIn: function(t, b, c, d){    //彈珠減振(彈珠漸進)<br>        return c - Tween['bounceOut'](d-t, 0, c, d) + b; <br>    },<br>    bounceOut: function(t, b, c, d){<br>        if ((t/=d)          5. t) + b;<br>        } else if (t            返回c*(7.5625*(t-=(1.5/2.75))*t + 007. #        } else if (t            return c*(7.5625*(t-=(2.25/2.75))) c*(7.5625*(t-=(2.25/2.75))) c*(7.5625*(t-=(2.25/2.75)))*(7.9375   return c *(7.5625*(t-=(2.625/2.75))*t + 0.984375) + b;<br>    },<br>    bounceBoth: function(t, b, c, d){<br> if (t <bounceboth: function b c d></bounceboth:> if (t            回傳Tween['bounceIn'](t*2, 0, c, d) * 0.5 + b;<br>        }# d, 0, c, d) * 0.5 + c*0.5 + b;<br>    }<br>};<br><br><br><br></p>

以上是商品下架特效製作:定時器,倒數計時,抖動特效程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板