<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        手寫簡單的jQuery雪花飄落效果實例

        來源:懂視網 責編:小采 時間:2020-11-27 22:16:14
        文檔

        手寫簡單的jQuery雪花飄落效果實例

        手寫簡單的jQuery雪花飄落效果實例:前言 最近閑來無事,準備寫個雪花飄落的效果,沒有寫太牛逼的特效,極大的簡化了代碼量,這樣容易讀取代碼,用起來也很簡單,對于那些小白簡直是福利啊,簡單易讀易學。先直接上代碼吧,然后再一一講解,直接復制粘貼就可以拿來用了,改起來更是容易。 <
        推薦度:
        導讀手寫簡單的jQuery雪花飄落效果實例:前言 最近閑來無事,準備寫個雪花飄落的效果,沒有寫太牛逼的特效,極大的簡化了代碼量,這樣容易讀取代碼,用起來也很簡單,對于那些小白簡直是福利啊,簡單易讀易學。先直接上代碼吧,然后再一一講解,直接復制粘貼就可以拿來用了,改起來更是容易。 <

        前言

        最近閑來無事,準備寫個雪花飄落的效果,沒有寫太牛逼的特效,極大的簡化了代碼量,這樣容易讀取代碼,用起來也很簡單,對于那些小白簡直是福利啊,簡單易讀易學。先直接上代碼吧,然后再一一講解,直接復制粘貼就可以拿來用了,改起來更是容易。

        <!DOCTYPE html>
        <html>
         <head>
         <meta charset="UTF-8">
         <title>雪花飄落</title>
         </head>
        
         <style type="text/css">
         body{background: black;height: 100%;overflow: hidden;}
         .xh{cursor: pointer;}
         </style>
         <body>
         <div class="bk">
        
         </div>
         </body>
         <script src="jquery-1.8.3.min.js"></script>
         <script type="text/javascript">
         var minSize = 5; //最小字體
         var maxSize = 50;//最大字體
         var newOne = 200; //生成雪花間隔
         var flakColor = "#fff"; //雪花顏色
         var flak = $("<div class='xh'></div>").css({position:"absolute","top":"0px"}).html("❉");//定義一個雪花
         var dhight = $(window).height(); //定義視圖高度
         var dw =$(window).width(); //定義視圖寬度
         setInterval(function(){
         var sizeflak = minSize+Math.random()*maxSize; //產生大小不等的雪花
         var startLeft = Math.random()*dw; //雪花生成是隨機的left值
         var startopcity = 0.7+Math.random()*0.3; //隨機透明度
         var endpositionTop= dhight-100; //雪花停止top的位置
         var endLeft= Math.random()*dw; //雪花停止的left位置
         var durationfull = 5000+Math.random()*3000; //雪花飄落速度不同
         flak.clone().appendTo($("body")).css({
         "left":startLeft ,
         "opacity":startopcity,
         "font-size":sizeflak,
         "color":flakColor
         }).animate({
         "top":endpositionTop,
         "left":endLeft,
         "apacity":0.1
         },durationfull,function(){
         $(this).remove()
         });
         },newOne);
         </script>
        </html>

        上面是代碼,是不是很簡單,你們該說了能做到想要的效果嗎?下面就讓你們看看效果

        上面就是效果了,可以把雪花換成錢或者其他東西,背景也可以改變一下,然后加個圣誕老人圖片,以及其他的,這樣就是一個簡單的圣誕頁面了,其實也是很酷的。

        當然我們也可以加點其他的交互效果,把圖片換成小飛機,然后做個打飛機的網頁游戲,其實也是很簡單的,只需在這個上面增加交互和一些邏輯就行了。下面我就給大家一步一步的講解一下整個程序設計的思路。

        前提摘要:  我這個用了jq,當然也可以用原生寫,只是jq比較省事,所以就用了jq。

        首先引入jq:    <script src="jquery-1.8.3.min.js"></script>   這個需要根據自己的真實目錄來寫,引入的時候注意兩點:

              一、記住一般引入的話最好放到整個頁面的最下面,因為在頁面加載的時候是從上往下加載的,如果jq引入的時候在樣式的上面就會使得頁面加載速度慢,影響用戶體驗,所以放在下面就會使得先加載樣式和圖片,有利于用戶體驗。

              二、引入的時候不要放到依賴jq代碼的下面,因為頁面加載從上往下加載,要是放到下面的話就會使得依賴的代碼找不到jq變量和方法,就會報錯。

        二、在寫之前先想一下需要的變量,然后定義一下變量:

            

        我們做的是雪花飄落,所以我用*好來代替雪花,所以我們就要知道定義一個雪花,var flak = $("<div class='xh'></div>").css({position:"absolute","top":"0px"}).html("❉"); //定義一個雪花 ,然后我們要想一下雪花的屬性,知道雪花的幾個屬性。

          1、我們知道下雪的時候雪花的大小是不一樣的,所以我們在定義雪花大小的時候要用個最大雪花和最小雪花的尺寸,在js 指定間隔執行函數setinterval中我們用了隨機數,使得雪花隨機生成在最大的到最小的之間的尺寸:

             var sizeflak = minSize+Math.random()*(maxSize-minSize); //產生大小不等的雪花

          2、定義一下間隔執行函數的間隔,這個也可以不定義,直接寫上也行

          3、定義一下雪花的自身固定屬性顏色,定義一下視圖的寬度。

        三、根據之前定義變量引入到間隔循環函數內:

         

         到了這一步就簡單的多了,因為這個函數是每隔多少秒執行一次,所以我們只需要把之前定義的東西都取最大值和最小值之間就行了。然后將之前定義的雪花克隆一下,這里講一下jq的克隆和js的克隆

            jq的克隆是節點直接.clone() ,是封裝好的js克隆方法。js就是直接節點.cloneNode(true) ,只需要知道就行了,這樣就不會過于依賴jq庫了。

        最后一步 :將克隆好的節點放入到我們的父節點中,也就是視圖中,我們這里的視圖是body,所以直接appendto(body) ,然后jq有個動畫api,我們直接用這個api使得整個雪花從克隆出來到運動起來,然后運動完

          后將克隆出來的雪花remove掉,這樣就實現了整個雪花飄落的效果。

        總結 :這個頁面的交互不多,但是也包含了一些知識點,總結一下用到了那些關鍵技術。

            1、雪花隨機飄落和隨機大小      Math.random()產生0-1的隨機數

            2、間隔執行函數的運用           setInterval(function(){},時間間隔)

            3、jq的動畫函數      animate

            4、克隆和刪除節點  clone()   remove()

        花了一個中午先是花了半小時從構思到寫出這個dom,然后一點一點講解出來這個構思過程,以及邏輯思維,轉眼12點了,自己的語言組織能力和打字功底有待提高。

        好了,

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        手寫簡單的jQuery雪花飄落效果實例

        手寫簡單的jQuery雪花飄落效果實例:前言 最近閑來無事,準備寫個雪花飄落的效果,沒有寫太牛逼的特效,極大的簡化了代碼量,這樣容易讀取代碼,用起來也很簡單,對于那些小白簡直是福利啊,簡單易讀易學。先直接上代碼吧,然后再一一講解,直接復制粘貼就可以拿來用了,改起來更是容易。 <
        推薦度:
        標簽: 特效 雪花 的效果
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲日本在线观看| 全黄性性激高免费视频| 久久亚洲av无码精品浪潮| 亚洲三级高清免费| 国产无遮挡裸体免费视频在线观看| 日韩激情无码免费毛片| 亚洲精品午夜久久久伊人| 国产成人一区二区三区视频免费| 国产亚洲精品激情都市| 久久久久女教师免费一区| 又黄又大又爽免费视频| 精品免费AV一区二区三区| 麻豆国产入口在线观看免费| 亚洲国产视频久久| 成人激情免费视频| 亚洲欧美日韩中文高清www777| 免费可以看黄的视频s色| 欧洲 亚洲 国产图片综合| 久久久久久国产a免费观看黄色大片| 亚洲一区影音先锋色资源| 国产一区二区三区免费观看在线| 国产午夜亚洲精品理论片不卡| 一区二区三区在线免费| 国外亚洲成AV人片在线观看| 国产精品内射视频免费| 国产精品亚洲а∨无码播放| a级毛片免费全部播放无码| 久久夜色精品国产亚洲| 欧洲人免费视频网站在线| 亚洲国产成人久久精品影视| 最近中文字幕国语免费完整| 7777久久亚洲中文字幕| 好爽…又高潮了毛片免费看| 亚洲av无码片vr一区二区三区| 国产精品久久香蕉免费播放| 中美日韩在线网免费毛片视频| 亚洲日本va在线视频观看| 久久国产乱子免费精品| 亚洲一级毛片免费看| 国产一级淫片a免费播放口之| 巨胸喷奶水www永久免费|