记录:一些jquery常用的功能
图片预加载
1
2
3
4
5
6
7
8
9
10
11
12
|
( 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”)
1
2
3
4
5
6
7
|
$( 'a[@rel$=' external ']' ).click( function (){ this .target = "_blank" ; }); /* Usage: <a href="http://www.catswhocode.com" rel="external">catswhocode.com</a> */ |
当支持 JavaScript 时为 body 增加 class
1
2
|
/* 该代码只有1行,但是最简单的用来检测浏览器是否支持 JavaScript 的方法,如果支持 JavaScript 就在 body 元素增加一个 hasJS 的 class */ $( 'body' ).addClass( 'hasJS' ); |
[代码] 平滑滚动页面到某个锚点
1
2
3
4
5
6
7
8
9
10
11
|
$(document).ready( function () { $( "a.topLink" ).click( function () { $( "html, body" ).animate({ scrollTop: $($( this ).attr( "href" )).offset().top + "px" }, { duration: 500, easing: "swing" }); return false ; }); }); |
[代码] 鼠标滑动时的渐入和渐出
1
2
3
4
5
6
7
8
9
|
$(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 }); }); |
[代码] 制作等高的列
1
2
3
4
5
|
var max_height = 0; $( "div.col" ).each( function (){ if ($( this ).height() > max_height) { max_height = $( this ).height(); } }); $( "div.col" ).height(max_height); |
[代码] 在一些老的浏览器上启用 HTML5 的支持
1
2
3
4
5
6
7
8
9
10
|
( 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]> <![endif]--> |
[代码] 测试浏览器是否支持某些 CSS3 属性
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
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 中传递的参数
1
2
3
4
5
|
$.urlParam = function (name){ var results = new RegExp( '[\\?&]' + name + '=([^&#]*)' ).exec(window.location.href); if (!results) { return 0; } return results[1] || 0; } |
[代码] 禁用表单的回车键提交
1
2
3
4
5
|
$( "#form" ).keypress( function (e) { if (e.which == 13) { return false ; } }); |