亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用jQuery實現(xiàn)的擲色子游戲動畫效果

 更新時間:2014年03月14日 16:56:00   作者:  
大家一定都玩過擲色子的游戲,今天我給大家分享的是如何使用jQuery來實現(xiàn)擲色子的動畫效果,通過jQuery的animate()自定義動畫函數(shù)并結(jié)合CSS背景圖片切換實現(xiàn)的動畫效果

實現(xiàn)原理:當色子擲出后,通過jQuery的animate()函數(shù)改變色子位移,中間加入延時效果,并變換色子背景,最終動畫運行到隨機產(chǎn)生的點數(shù)時停止,并顯示擲出的點數(shù)。其實就是動畫過程加入多個不同圖片的幀(同flash動畫影片中的幀),幀數(shù)越多效果越好,然后逐幀運行后就形成了動畫效果。
一、準備工作
我們需要準備色子素材,本示例中,我采用從網(wǎng)絡(luò)上獲取到的色子素材,我們要做處理的是將6個色子圖片(1-6點),以及中間過渡效果的圖片(做運動模糊處理)放在同一張圖片上,保存為dice.png,用作色子背景圖。
載入jQuery庫,這是必須的。

復(fù)制代碼 代碼如下:
<script type="text/javascript" src="js/jquery.js"></script>

然后在HTML頁面的body中加入以下代碼,其中#dice是用來放置色子的,#result是用來顯示提示信息的。
復(fù)制代碼 代碼如下:
<div id="dice" class="dice dice_1"></div>
<p id="result">請直接點擊上面的色子!</p>

二、CSS代碼
我們使用background將圖片dice.png載入到.dice中。然后我們分別用了幾種樣式通過不同的background-position值來定位不同的色子點數(shù)圖和過渡效果圖。其中的過渡效果圖片我做了簡單的模糊處理,大家也可以使用css3來處理圖片的模糊效果。注意#dice_mask是用來做防重復(fù)點擊的,后面會提到。
復(fù)制代碼 代碼如下:
.wrap{width:90px; height:90px; margin:120px auto 30px auto; position:relative}
.dice{width:90px; height:90px; background:url(dice.png) no-repeat;}
.dice_1{background-position:-5px -4px}
.dice_2{background-position:-5px -107px}
.dice_3{background-position:-5px -212px}
.dice_4{background-position:-5px -317px}
.dice_5{background-position:-5px -427px}
.dice_6{background-position:-5px -535px}
.dice_t{background-position:-5px -651px}
.dice_s{background-position:-5px -763px}
.dice_e{background-position:-5px -876px}
p#result{text-align:center; font-size:16px}
p#result span{font-weight:bold; color:#f30; margin:6px}
#dice_mask{width:90px; height:90px; background:#fff; opacity:0; position:absolute;
 top:0; left:0; z-index:999}

三、jQuery代碼
當單擊色子時,先預(yù)置色子的樣式(清空上次動畫后的樣式),將色子用透明的#dice_mask遮住防重復(fù)點擊,并產(chǎn)生一個1-6的隨機數(shù),然后通過animate()函數(shù),改變色子位移,改變色子的class使得出現(xiàn)過渡模糊背景圖片,接著稍作延遲delay(),再接著進入下一個幀動畫,最后動畫結(jié)束時,色子的class樣式定位到dice_x上,x表示點數(shù),也就是得到了擲出色子后的點數(shù),移除遮罩效果,又可以繼續(xù)點擊擲色子。
復(fù)制代碼 代碼如下:
$(function(){
    var dice = $("#dice");
    dice.click(function(){
        dice.attr("class","dice");//清除上次動畫后的點數(shù)
        dice.css("cursor","default");
        $(".wrap").append("<div id='dice_mask'></div>");//加遮罩
        var num = Math.floor(Math.random()*6+1);//產(chǎn)生隨機數(shù)1-6
        dice.animate({left: '+2px'}, 100,function(){
            dice.addClass("dice_t");
        }).delay(200).animate({top:'-2px'},100,function(){
            dice.removeClass("dice_t").addClass("dice_s");
        }).delay(200).animate({opacity: 'show'},600,function(){
            dice.removeClass("dice_s").addClass("dice_e");
        }).delay(100).animate({left:'-2px',top:'2px'},100,function(){
            dice.removeClass("dice_e").addClass("dice_"+num);
            $("#result").html("您擲得點數(shù)是<span>"+num+"</span>");
            dice.css('cursor','pointer');
            $("#dice_mask").remove();//移除遮罩
        });
    });
});

關(guān)于防止重復(fù)點擊的辦法很多,jQuery提供了one(),live(),bind(),on()等等這些函數(shù)在該實例中都行不通,所以我想了個辦法,當點擊色子后開始動畫時,用一個和色子大小一樣的透明遮罩層將色子遮住,使得在動畫運行中不可連續(xù)重復(fù)點擊色子,當動畫運行完成后,再將遮罩層移除,這樣色子就可以重新被點擊了。
以上擲色子的動畫效果就是模擬了flash的幀動畫,通過時間軸來播放逐幀運行,而運用jQuery可以代替flash完成這樣的動畫效果,雖然效果沒有flash的炫。本文的擲色子動畫效果是為下期文章做鋪墊,下期文章我將給大家介紹結(jié)合jQuery、HTML、CSS、PHP、MySQL的綜合性技術(shù)文章及實例代碼,講解擲色子抽獎游戲,可以控制擲出色子點數(shù)的概率,也是一個趣味游戲。

相關(guān)文章

  • 基于jquery實現(xiàn)頁面滾動到底自動加載數(shù)據(jù)的功能

    基于jquery實現(xiàn)頁面滾動到底自動加載數(shù)據(jù)的功能

    這篇文章主要為大家詳細介紹了基于jquery實現(xiàn)頁面滾動到底自動加載數(shù)據(jù)的功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2015-12-12
  • jQuery插件artDialog.js使用與關(guān)閉方法示例

    jQuery插件artDialog.js使用與關(guān)閉方法示例

    這篇文章主要介紹了jQuery插件artDialog.js使用與關(guān)閉方法,結(jié)合具體實例形式分析了jQuery彈出窗口插件artDialog.js的簡單使用方法及相關(guān)注意事項,需要的朋友可以參考下
    2017-10-10
  • jQuery帶箭頭提示框tooltips插件集錦

    jQuery帶箭頭提示框tooltips插件集錦

    這里給大家推薦幾款比較好用實用易用的jQuery帶箭頭提示框tooltips插件,兼容性都很不錯,大家根據(jù)需要自由選擇吧
    2014-11-11
  • jQuery中replaceAll()方法用法實例

    jQuery中replaceAll()方法用法實例

    這篇文章主要介紹了jQuery中replaceAll()方法用法,實例分析了replaceAll()方法的功能、定義及匹配元素去替換指定內(nèi)容的方法,需要的朋友可以參考下
    2015-01-01
  • 淺談jQuery中height與width

    淺談jQuery中height與width

    本文給大家簡單談?wù)刯Query中的獲取高度和寬度的height和width方法,這里總結(jié)一下,方便大家更好的理解,有需要的小伙伴可以參考下。
    2015-07-07
  • jquery實現(xiàn)仿新浪微博評論滾動效果

    jquery實現(xiàn)仿新浪微博評論滾動效果

    這篇文章主要介紹了jquery實現(xiàn)仿新浪微博評論滾動效果,基于jquery實現(xiàn)頁面圖文定時滾動效果,涉及jquery頁面元素的遍歷與樣式的動態(tài)操作技巧,是一款經(jīng)典的jquery滾動特效,非常具有實用價值,需要的朋友可以參考下
    2015-08-08
  • jQuery實現(xiàn)動態(tài)顯示select下拉列表數(shù)據(jù)的方法

    jQuery實現(xiàn)動態(tài)顯示select下拉列表數(shù)據(jù)的方法

    這篇文章主要介紹了jQuery實現(xiàn)動態(tài)顯示select下拉列表數(shù)據(jù)的方法,涉及jQuery針對json數(shù)據(jù)的讀取、遍歷及頁面元素屬性動態(tài)操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-02-02
  • jQuery 改變P標簽文本值方法

    jQuery 改變P標簽文本值方法

    下面小編就為大家分享一篇jQuery 改變P標簽文本值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • jQuery下的幾個你可能沒用過的功能

    jQuery下的幾個你可能沒用過的功能

    用jQuery好久了,都做了兩個項目了。今兒晚上喝咖啡喝多了,這都兩點多了睡不著,給大家分享下我在項目中用到的一些用jQuery實現(xiàn)的一些比較好的功能。希望對一些新手有點用。。。高手們可以拍磚哈。。。。我頭很硬不怕疼。。。呵呵。
    2010-08-08
  • jQuery實現(xiàn)的網(wǎng)格線繪制方法

    jQuery實現(xiàn)的網(wǎng)格線繪制方法

    這篇文章主要介紹了jQuery實現(xiàn)的網(wǎng)格線繪制方法,涉及jQuery針對頁面元素的獲取及樣式動態(tài)操作相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06

最新評論