最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery實現(xiàn)網頁抖動的菜單抖動效果

 更新時間:2015年08月07日 16:34:51   作者:皮蛋  
這篇文章主要介紹了jQuery實現(xiàn)網頁抖動的菜單抖動效果,鼠標滑過菜單項可見到菜單項的抖動效果,涉及jquery鼠標事件及頁面元素樣式動態(tài)操作的技巧,需要的朋友可以參考下

本文實例講述了jQuery實現(xiàn)網頁抖動的菜單抖動效果。分享給大家供大家參考。具體如下:

這里的jQuery抖動導航菜單效果,兼容IE7/8/9及其它主流瀏覽器,使用方法:先引入jQuery腳本庫和jquery.shake.js文件,然后在需要的元素上調用shake( )方法,例如想使整個頁面抖動,則這么寫:$('body').shake( ),調用上述方法后,將鼠標移至指定的元素,該元素就會抖動。

運行效果截圖如下:

具體代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style type="text/css">
body { background-color: lightgreen; }
#demo, #demo *, #footer, #footer * { margin: 0; padding: 0; }
#demo, #footer { width: 70%; margin: 1em auto; font: normal 1em/1.4em 微軟雅黑; }
#demo ul { list-style: none; overflow: hidden; background-color: rgb(241, 241, 241); padding: 1em 0; }
#demo ul li { float: left; width: 10%; text-align: center; cursor: pointer; padding: .3em 0; color: #262626; }
#demo ul li:hover { background-color: #D4D4D4; }
#msg { font-size: 1.2em; text-align: center; margin: 2em 0; }
#footer { font-size: .8em; }
#footer p { margin: .3em 0; }
#footer a { color: rgb(126, 34, 34); text-decoration: none; }
#footer a:hover { text-decoration: underline; }
#footer a:visited { color: rgb(187, 166, 166); }
</style>
<title>jQuery抖動導航菜單效果</title>
<script src="jquery-1.6.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
(function ($) {
$.fn.shake = function (s) {
 var t = { rangeX: 2, rangeY: 2, rangeRot: 1, rumbleSpeed: 10, rumbleEvent: 'hover', posX: 'left', posY: 'top' }, u = $.extend(t, s);
 return this.each(function () {
  var $obj = $(this)
  , f
  , g = u.rangeX * 2
  , h = u.rangeY * 2
  , i = u.rangeRot * 2
  , j = u.rumbleSpeed
  , k = $obj.css('position')
  , l = u.posX
  , m = u.posY
  , n
  , o
  , p
  , q = { 'position': k, '-webkit-transform': 'rotate(0deg)', '-moz-transform': 'rotate(0deg)', '-o-transform': 'rotate(0deg)', 'transform': 'rotate(0deg)' };
  if (l === 'left') {
  n = parseInt($obj.css('left'), 10)
  }
  if (l === 'right') {
  n = parseInt($obj.css('right'), 10)
  }
  if (m === 'top') {
  o = parseInt($obj.css('top'), 10)
  }
  if (m === 'bottom') {
  o = parseInt($obj.css('bottom'), 10)
  }
  function rumbler(a) {
  var b = Math.random()
  , c = Math.floor(Math.random() * (g + 1)) - g / 2
  , d = Math.floor(Math.random() * (h + 1)) - h / 2
  , e = Math.floor(Math.random() * (i + 1)) - i / 2;
  if (a.css('display') === 'inline') {
   p = true;
   a.css('display', 'inline-block')
  }
  if (c === 0 && g !== 0) {
   c = b < .5 ? 1 : -1;
  }
  if (d === 0 && h !== 0) {
   d = b < .5 ? 1 : -1;
  }
  if (k === 'absolute') {
   a.css({ 'position': 'absolute', '-webkit-transform': 'rotate(' + e + 'deg)', '-moz-transform': 'rotate(' + e + 'deg)', '-o-transform': 'rotate(' + e + 'deg)', 'transform': 'rotate(' + e + 'deg)' });
   a.css(l, n + c + 'px');
   a.css(m, o + d + 'px')
  }
  if (k === 'fixed') {
   a.css({ 'position': 'fixed', '-webkit-transform': 'rotate(' + e + 'deg)', '-moz-transform': 'rotate(' + e + 'deg)', '-o-transform': 'rotate(' + e + 'deg)', 'transform': 'rotate(' + e + 'deg)' });
   a.css(l, n + c + 'px');
   a.css(m, o + d + 'px')
  }
  if (k === 'static' || k === 'relative') {
   a.css({ 'position': 'relative', '-webkit-transform': 'rotate(' + e + 'deg)', '-moz-transform': 'rotate(' + e + 'deg)', '-o-transform': 'rotate(' + e + 'deg)', 'transform': 'rotate(' + e + 'deg)' });
   a.css(l, c + 'px');
   a.css(m, d + 'px')
  }
  }
  if (u.rumbleEvent === 'hover') {
  $obj.hover(function () {
   var a = $(this);
   f = setInterval(function () {
   rumbler(a)
   }, j)
  }, function () {
   var a = $(this);
   clearInterval(f);
   a.css(q);
   a.css(l, n + 'px');
   a.css(m, o + 'px');
   if (p === true) {
   a.css('display', 'inline')
   }
  });
  }
  if (u.rumbleEvent === 'click') {
  $obj.toggle(function () {
   var a = $(this);
   f = setInterval(function () {
   rumbler(a)
   }, j)
  }, function () {
   var a = $(this);
   clearInterval(f);
   a.css(q);
   a.css(l, n + 'px');
   a.css(m, o + 'px');
   if (p === true) {
   a.css('display', 'inline')
   }
  });
  }
  if (u.rumbleEvent === 'mousedown') {
  $obj.bind({
   mousedown: function () {
   var a = $(this);
   f = setInterval(function () {
    rumbler(a)
   }, j)
   }, mouseup: function () {
   var a = $(this);
   clearInterval(f);
   a.css(q);
   a.css(l, n + 'px');
   a.css(m, o + 'px');
   if (p === true) {
    a.css('display', 'inline')
   }
   }, mouseout: function () {
   var a = $(this);
   clearInterval(f);
   a.css(q);
   a.css(l, n + 'px');
   a.css(m, o + 'px');
   if (p === true) {
    a.css('display', 'inline')
   }
   }
  });
  }
  if (u.rumbleEvent === 'constant') {
  var r = $(this);
  f = setInterval(function () {
   rumbler(r)
  }, j);
  }
 });
 }
}(jQuery));
</script>
</head>
<body>
 <div id="demo">
 <ul>
  <li>首頁</li>
  <li>ASP</li>
  <li>PHP</li>
  <li>JSP</li>
  <li>DELPHI</li>
  <li>VC++</li>
  <li>C#</li>
  <li>VB</li>
  <li>.NET</li>
 </ul>
 <div id="msg">將鼠標移動到導航條上查看效果</div>
 </div>
 <script type="text/javascript">
 $('#demo li').shake();
 </script>
</body>
</html>

希望本文所述對大家的jquery程序設計有所幫助。

相關文章

  • jQuery+CSS實現(xiàn)一個側滑導航菜單代碼

    jQuery+CSS實現(xiàn)一個側滑導航菜單代碼

    側滑菜單在網站設計中應用比較廣泛,在許多網站上都可以看到此種類型的菜單。本文給大家介紹jQuery+CSS實現(xiàn)一個側滑導航菜單代碼,需要的朋友參考下吧
    2016-05-05
  • 深入理解jquery跨域請求方法

    深入理解jquery跨域請求方法

    下面小編就為大家?guī)硪黄钊肜斫鈐query跨域請求方法。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • 最常見的左側分類菜單欄jQuery實現(xiàn)代碼

    最常見的左側分類菜單欄jQuery實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了最常見的左側分類菜單欄jQuery實現(xiàn)代碼,仿京東、淘寶等各大類網站效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • vue-preview縮略圖報錯解決

    vue-preview縮略圖報錯解決

    這篇文章主要為大家介紹了vue-preview縮略圖報錯解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • jQuery選擇器中的特殊符號處理方法

    jQuery選擇器中的特殊符號處理方法

    一般情況下,在jQuery選擇器中,我們很少會用到諸如“.”、“#”、“(”、“[”等特殊字符,但是在實際應用中,偶爾也會遇到表達式中含有“#”和“.”等特殊字符,那么是如何處理這些個特殊字符的呢?下面小編給大家介紹下
    2017-09-09
  • jQuery簡單判斷值是否存在于數(shù)組中的方法示例

    jQuery簡單判斷值是否存在于數(shù)組中的方法示例

    這篇文章主要介紹了jQuery簡單判斷值是否存在于數(shù)組中的方法,涉及jQuery數(shù)組遍歷及基于$.inArray的元素判斷相關操作技巧,需要的朋友可以參考下
    2018-04-04
  • jQuery遍歷之next()、nextAll()方法使用實例

    jQuery遍歷之next()、nextAll()方法使用實例

    這篇文章主要介紹了jQuery遍歷之next()、nextAll()方法使用實例,本文先是給出了實例代碼,然后對代碼的作用分析和說明,需要的朋友可以參考下
    2014-11-11
  • 讀jQuery之六 緩存數(shù)據(jù)功能介紹

    讀jQuery之六 緩存數(shù)據(jù)功能介紹

    讀jQuery之六 緩存數(shù)據(jù)功能介紹,學習jquery的朋友可以參考下。
    2011-06-06
  • jQuery+PHP+Mysql實現(xiàn)抽獎程序

    jQuery+PHP+Mysql實現(xiàn)抽獎程序

    這篇文章主要為大家詳細介紹了jQuery+PHP+Mysql實現(xiàn)抽獎程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • jQuery Easyui加載表格出錯時在表格中間顯示自定義的提示內容

    jQuery Easyui加載表格出錯時在表格中間顯示自定義的提示內容

    這篇文章主要介紹了jQuery Easyui加載表格出錯時在表格中間顯示自定義的提示內容的相關資料,需要的朋友可以參考下
    2016-12-12

最新評論

文登市| 衡水市| 霍邱县| 禹城市| 神池县| 云梦县| 临猗县| 和顺县| 孙吴县| 逊克县| 中牟县| 岳普湖县| 阳新县| 张家港市| 平度市| 盐亭县| 黔东| 抚顺市| 绥芬河市| 建阳市| 交口县| 延边| 克什克腾旗| 石屏县| 五寨县| 石狮市| 辽源市| 肇东市| 高阳县| 波密县| 石屏县| 南安市| 大埔区| 绿春县| 嘉兴市| 兴和县| 焉耆| 岑巩县| 东源县| 嘉禾县| 女性|