返回顶部

收藏

10 个很棒的 jQuery 代码片段

更多

图片预加载

(function($) {
  var cache = [];
  // Arguments are image paths relative to the current page.
  $.preLoadImages = function() {
    var args_len = arguments.length;
    for (var i = args_len; i--;) {
      var cacheImage = document.createElement('img');
      cacheImage.src = arguments[i];
      cache.push(cacheImage);
    }
  }

jQuery.preLoadImages("image1.gif", "/path/to/image2.png");

在新窗口打开链接 (target=”blank”)

$('a[@rel$='external']').click(function(){
     this.target = "_blank";
});

/*
   Usage:
   <a href="http://www.catswhocode.com" rel="external">catswhocode.com</a>
*/

当支持 JavaScript 时为 body 增加 class

/* 该代码只有1行,但是最简单的用来检测浏览器是否支持 JavaScript 的方法,如果支持 JavaScript 就在 body 元素增加一个 hasJS 的 class */
$('body').addClass('hasJS');

平滑滚动页面到某个锚点

$(document).ready(function() {
    $("a.topLink").click(function() {
        $("html, body").animate({
            scrollTop: $($(this).attr("href")).offset().top + "px"
        }, {
            duration: 500,
            easing: "swing"
        });
        return false;
    });
});

鼠标滑动时的渐入和渐出

$(document).ready(function(){
    $(".thumbs img").fadeTo("slow", 0.6); // This sets the opacity of the thumbs to fade down to 60% when the page loads

    $(".thumbs img").hover(function(){
        $(this).fadeTo("slow", 1.0); // This should set the opacity to 100% on hover
    },function(){
        $(this).fadeTo("slow", 0.6); // This should set the opacity back to 60% on mouseout
    });
});

制作等高的列

var max_height = 0;
$("div.col").each(function(){
    if ($(this).height() > max_height) { max_height = $(this).height(); }
});
$("div.col").height(max_height);

在一些老的浏览器上启用 HTML5 的支持

(function(){
    if(!/*@cc_on!@*/0)
        return;
    var e = "abbr,article,aside,audio,bb,canvas,datagrid,datalist,details,dialog,eventsource,figure,footer,header,hgroup,mark,menu,meter,nav,output,progress,section,time,video".split(','),i=e.length;while(i--){document.createElement(e[i])}
})()

//然后在head中引入该js
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

测试浏览器是否支持某些 CSS3 属性

var supports = (function() {
   var div = document.createElement('div'),
      vendors = 'Khtml Ms O Moz Webkit'.split(' '),
      len = vendors.length;

   return function(prop) {
      if ( prop in div.style ) return true;

      prop = prop.replace(/^[a-z]/, function(val) {
         return val.toUpperCase();
      });

      while(len--) {
         if ( vendors[len] + prop in div.style ) {
            // browser supports box-shadow. Do what you need.
            // Or use a bang (!) to test if the browser doesn't.
            return true;
         }
      }
      return false;
   };
})();

if ( supports('textShadow') ) {
   document.documentElement.className += ' textShadow';

获取 URL 中传递的参数

$.urlParam = function(name){
    var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
    if (!results) { return 0; }
    return results[1] || 0;
}

禁用表单的回车键提交

$("#form").keypress(function(e) {
  if (e.which == 13) {
    return false;
  }
});

标签:jQuery,javascript

收藏

1人收藏

支持

0

反对

0

相关聚客文章
  1. 王晔 发表 2013-11-12 04:25:36 解决Uploadify上传控件加载导致的GET 404 Not Found问题
  2. biezhi 发表 2015-10-02 06:04:00 jquery瀑布流布局(masonry.js)
  3. dormy 发表 2014-01-09 02:48:31 解决ie6浏览器,JSON未定义错误
  4. 张映 发表 2014-03-13 04:16:08 angularjs directive 实例 详解
  5. wjxfpf.com 发表 2016-01-08 00:00:00 &NewLine;&NewLine;&NewLine; &Tab;&Tab; jsonp
  6. 张映 发表 2014-03-05 08:20:07 angularjs 设置全局变量的3种方法
  7. Harries 发表 2016-02-03 14:56:43 jQuery.ajax()的相关参数及使用
  8. 歪脖骇客 发表 2016-03-20 10:31:55 使用 jQuery 复制文字到剪贴板的技巧
  9. 和大头 发表 2011-09-18 08:25:19 ProcessingJS介绍
  10. ajaxj 发表 2014-07-25 01:05:11 javascript 删除节点
  11. David Walsh 发表 2014-09-24 16:25:07 iOS Mobile Safari Hover Menu Fix
  12. admin 发表 2016-11-22 11:23:12 JavaScript/jQuery常用代码片段

发表评论