jquery實(shí)現(xiàn)頁面彈球效果
本文實(shí)例為大家分享了jquery實(shí)現(xiàn)頁面彈球效果的具體代碼,供大家參考,具體內(nèi)容如下
像windows屏保一樣,實(shí)現(xiàn)小球在頁面中的彈跳,并且隨著頁面的改變而改變
如下圖:
源碼
<!doctype html> <html><head> <meta charset="utf-8"> <title>無標(biāo)題文檔</title> </head> ? <style type="text/css"> ? ?*{ ?? ? ? margin:0px; ?? ? ? padding:0px;} ? ?#container{ ?? ? ? width:800px; ?? ? ? height:500px; ?? ? ? background:#FFF; ?? ? ? margin:0px auto; ?? ? ? margin-top:100px;} ? ?#b1{ ?? ? ? width:50px; ?? ? ? height:50px; ?? ? ? background-color:#FFCCCC; ?? ? ? border-radius:100%; ?? ? ? position:fixed; ?? ? ? ? ?} ? ?#b2{ ?? ? ? width:80px; ?? ? ? height:80px; ?? ? ? background-color:#9EC0C9; ?? ? ? border-radius:100%; ?? ? ? position:fixed; ?? ? ? ? ?} ? ? #b3{ ? ? ? ?width:60px; ? ? ? ?height:60px; ? ? ? ?background-color:#336633; ? ? ? ?border-radius:100%; ? ? ? ?position:fixed; ? ? ? ? ? } </style> ? <script src="jquery-3.3.1.js"></script> <script type="text/javascript"> ? ? ?? ? ? //調(diào)用移動浮窗方法并按順序傳入正確參數(shù)["obj",x,y,l,t,m],obj必填 ?? ?/* ?? ? ? move_w:能夠移動的寬度 ?? ? ? move_h:能夠移動的高度 ?? ? ? x:左右移動速度 ?? ? ? y:上下移動速度 ?? ? ? l:初始left的值 ?? ? ? t:初始top的值 ?? ? ? m:時間 ?? ? ?? ?? ?*/ ? ? function move_obj(obj, x, y, l, t, m) { ? ? if (obj == undefined) { ? ? ? ? alert("方法調(diào)用錯誤,請傳入正確參數(shù)!"); ? ? ? ? return; ? ? } ?? ? ? ? //當(dāng)前瀏覽器窗口大小 ? ? move_w = $(window).width() ; ? ? move_h = $(window).height() ; ? ? ? ? ? ? //若瀏覽器窗口大小改變 ? ? $(window).resize(function() {? ? ? ? ? ?move_w = $(window).width() ; ? ? ? ? ?move_h = $(window).height() ; ? ? }); ? ? ? //移動的速度和初始位置 ? ? x = (x == undefined || x == '') ? 3 : x; ? ? y = (y == undefined || y == '') ? 3 : y; ? ? l = (l == undefined || l == '') ? 0 : l; ? ? t = (t == undefined || t == '') ? 0 : t; ? ? m = (m == undefined || m == '') ? 80 : m; ?? ? ? ? //移動 ? ? function moving() { ? ? ? ? ? if( l >= move_w - $(obj).width() || l < 0 ){ ?//如果碰到瀏覽器左右壁 ? ? ? ? ? ? x = -x; ? ? ? ? } ? ? ? ? ? if(t >= move_h - $(obj).height() || t < 0){ ?//如果碰到瀏覽器上下壁 ? ? ? ? ? ? y = -y; ? ? ? ? } ? ? ? ? ? ? ? ? l += x; ? ? ? ? t += y; ? ? ? ? ? $(obj).css({ ?//改變div的位置 ? ? ? ? ? ? left: l, ? ? ? ? ? ? top: t ? ? ? ? }); ? ? } ?? ? ? ? var timer_move = setInterval(function() { ? ? ? ? moving(); ? ? }, ? ? m); ?? ? ? ? $(obj).mouseover(function() { ? ? ? ? clearInterval(timer_move); ? ? }); ? ? ? $(obj).mouseout(function() { ? ? ? ? timer_move = setInterval(function() { ? ? ? ? ? ? moving(); ? ? ? ? }, ? ? ? ? m); ? ? }); ? } ? ? ?move_obj("#b1",30,10,300,300,100); ? ?move_obj("#b2"); ? ?move_obj("#b3",-20,30,600,500,50); ? </script> ? ? <body bgcolor="#FFFFFF"> ? ? <div id="b1"></div> ? <div id="b2"></div> ? <div id="b3"></div> ? ? </body> </html>
總結(jié)
1.$(window).resize()
監(jiān)測窗口是否改變
2. 獲取當(dāng)前瀏覽器窗口大小
move_w = $(window).width() ;
move_h = $(window).height() ;
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
使用JQuery實(shí)現(xiàn)圖片輪播效果的實(shí)例(推薦)
下面小編就為大家?guī)硪黄褂肑Query實(shí)現(xiàn)圖片輪播效果的實(shí)例(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10jQuery EasyUI tree增加搜索功能的實(shí)現(xiàn)方法
擴(kuò)展jQuery EasyUI tree搜索樹節(jié)點(diǎn)的方法,使其支持節(jié)點(diǎn)名稱的模糊匹配,將不匹配的節(jié)點(diǎn)隱藏。下面通過本文給大家分享jQuery EasyUI tree增加搜索功能,需要的朋友可以參考下2017-04-04jQuery快速實(shí)現(xiàn)商品數(shù)量加減的方法
這篇文章主要介紹了 jQuery快速實(shí)現(xiàn)商品數(shù)量加減的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-02-02jquery基于layui實(shí)現(xiàn)二級聯(lián)動下拉選擇(省份城市選擇)
本篇文章主要介紹了jquery基于layui實(shí)現(xiàn)二級聯(lián)動下拉選擇(省份城市選擇),具有一定的實(shí)用價值,需要的朋友可以參考下2017-06-06jquery的flexigrid無法顯示數(shù)據(jù)提示獲取到數(shù)據(jù)
升級了IE10,發(fā)現(xiàn)flexigrid無法顯示數(shù)據(jù),提示獲取到了數(shù)據(jù),但沒任何報錯任何顯示,經(jīng)過試驗(yàn)和跟蹤,修改如下,有類似問題的朋友可以參考下哈2013-07-07jquery 中多條件選擇器,相對選擇器,層次選擇器的區(qū)別
jquery 中多條件選擇器,相對選擇器,層次選擇器的區(qū)別介紹,需要的朋友可以參考下2012-07-07