七
29
2010
实用jquery代码片段集合[上]
发布者: seasun加载google的jquery库
- <script type=”text/javascript” src=”http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js”></script>
有利于加快加载速度(已经得到验证)。
修改图片src更新图片
- $(imageobj).attr(‘src’, $(imageobj).attr(‘src’) + ‘?’ + Math.random() );
(这是很实用的技巧,曾经有人问明河,为什么他已经修改了图片的src,但图片没变化呢?原因在于缓存,给图片路径后加个随机数参数即可。
加载多张图片,判断加载完成状态
- var totalimages = 10;
- var loadedimages = 0;
- $(“<img/>”).load(function() {
- ++loadedimages;
- if(loadedimages == totalimages){
- //全部图片加载完成时…..
- }
- });
双击不选中文本
- var clearSelection = function () {
- if(document.selection && document.selection.empty) {
- document.selection.empty();
- } else if(window.getSelection) {
- var sel = window.getSelection();
- sel.removeAllRanges();
- }
- }
- $(element).bind(‘dblclick’,function(event){
- clearSelection();
- });
对一个列表进行排序
- <ul>
- <li>cloud</li>
- <li>sun</li>
- <li>rain</li>
- <li>snow</li>
- </ul
- var items = $(‘.to_order li’).get();
- items.sort(function(a,b){
- var keyA = $(a).text();
- var keyB = $(b).text();
- if (keyA < keyB) return -1;
- if (keyA > keyB) return 1;
- return 0;
- });
- var ul = $(‘.to_order’);
- $.each(items, function(i, li){
- ul.append(li);
- });
(中文无效)
绑定右击事件
- $(document).ready(function(){
- $(document).bind(“contextmenu”,function(e){
- return false;
- });
- });
扩展jquery的对象选择器
- $.extend($.expr[':'], {
- //选择器名
- moreThanAThousand : function (a){
- return parseInt($(a).html()) > 1000;
- }
- });
- $(document).ready(function() {
- $(‘td:moreThanAThousand’).css(‘background-color’, ‘#ff0000′);
- });
检查对象是否存在
- if ($(“#elementid”).length) {
- //……
- }
取消一个ajax请求
- var req = $.ajax({
- type: “POST”,
- url: “someurl”,
- data: “id=1″,
- success: function(){
- }
- });
- //取消ajax请求
- req.abort()
检查cookies是否可用
- $(document).ready(function() {
- var dt = new Date();
- dt.setSeconds(dt.getSeconds() + 60);
- document.cookie = “cookietest=1; expires=” + dt.toGMTString();
- var cookiesEnabled = document.cookie.indexOf(“cookietest=”) != -1;
- if(!cookiesEnabled){
- //cookies不能用……..
- }
- });
获取当前元素在元素集内的索引值
- $(“ul > li”).click(function () {
- var index = $(this).prevAll().length;
- });
如果你用的是jquery1.4,明河推荐使用以下方法:
- $(“ul > li”).click(function () {
- var index = $(this).index();
- });
让一个元素相对于屏幕居中
- jQuery.fn.center = function () {
- this.css(“position”,”absolute”);
- this.css(“top”, ( $(window).height() – this.height() ) / 2+$(window).scrollTop() + “px”);
- this.css(“left”, ( $(window).width() – this.width() ) / 2+$(window).scrollLeft() + “px”);
- return this;
- }
- $(element).center();
这个方法非常实用,明河严重推荐收藏
获取当前页面的URL
- $(document).ready(function() {
- var pathname = window.location.pathname;
- });