jQuery 使用小技巧

/* 
1. Disable right-click(禁用右键) 
Disable right-click contextual menu. 
*/  
$(document).ready(function(){   
    $(document).bind(”contextmenu”,function(e){   
        return false;   
    });   
});   
  
/* 
 * 2. Disappearing search field text(隐藏搜索文本框文字) 
Hide when clicked in the search field, the value.(example can be found below in the comment fields) 
 
*/  
$(document).ready(function() {   
    $(”input.text1″).val(”Enter your search text here”);   
    textFill($('input.text1′));   
});  
  
function textFill(input){ // input focus text function  
    var originalvalue = input.val();   
    input.focus( function(){   
        if( $.trim(input.val()) == originalvalue ){ input.val(”); }   
    });   
    input.blur( function(){  
        if( $.trim(input.val()) == ” ){ input.val(originalvalue); }   
    });  
}  
  
/* 
3. Opening links in a new window(在新窗口中打开链接) 
XHTML 1.0 Strict doesn't allow this attribute in the code, so use this to keep the code valid. 
*/  
$(document).ready(function() {   
    // Example 1: Every link will open in a new window  
    $('a[href^="http://"]').attr(”target”, "_blank”);  
  
    // Example 2: Links with the rel=”external” attribute will only open in a new window  
    $("a[rel$='external']").click(function(){  
        this.target = "_blank";   
    });   
});  
  
/* 
4. Detect browser(检测浏览器) 
Change/add something for a certain browser. 
Notice: As of jQuery 1.4, the $.browser variable is replaced by $.support. 
 */  
  
$(document).ready(function() {   
    // Target Firefox 2 and above  
    if ($.browser.mozilla && $.browser.version >= "1.8″ ){   
        // do something  
    }  
      
    // Target Safari  
    if( $.browser.safari ){   
        // do something  
    }  
      
    // Target Chrome  
    if( $.browser.chrome){   
        // do something  
    }  
      
    // Target Camino  
    if( $.browser.camino){   
        // do something  
    }  
      
    // Target Opera  
    if( $.browser.opera){   
        // do something  
    }  
      
    // Target IE6 and below  
    if ($.browser.msie && $.browser.version <= 6 ){  
        // do something   
    }  
    // Target anything above IE6   
    if($.browser.msie && $.browser.version > 6){  
        // do something  
    }  
});   
  
/* 
5. Preloading images(预加载图片) 
This piece of code will prevent the loading of all images, which can be useful if you have a site with lots of images. 
这段代码有问题 
*/  
$(document).ready(function() {  
    jQuery.preloadImages = function(){  
        for(var i = 0; i”).attr(”src”, arguments[i]);   
    }  
}  
// how to use  
$.preloadImages(”image1.jpg”);   
});   
  
  
/* 
6. css Styleswitcher(页面样式切换) 
Switch between different styles? 
*/  
$(document).ready(function() {  
    $("a.Styleswitcher").click(function() {  
        // swicth the LINK REL attribute with the value in A REL attribute  
        $('link[rel=stylesheet]').attr('href' , $(this).attr('rel'));   
    });  
});  
  
/* 
7. Columns of equal height(列高度相同) 
If you are using two css columns, use this to make them exactly the same height. 
*/  
$(document).ready(function() {  
    function equalHeight(group) {   
        tallest = 0;   
        group.each(function() {   
            thisHeight = $(this).height();   
            if(thisHeight > tallest) {   
                tallest = thisHeight;   
            }   
        });   
        group.height(tallest);   
    }  
    // how to use  
    equalHeight($(".left"));   
    equalHeight($(".right"));   
});   
  
/* 
8. Font resizing(动态控制页面字体大小) 
Want to let the users change there font size? 
*/  
$(document).ready(function() {   
    // Reset the font size(back to default)  
    var originalFontSize = $('html').css('font-size');   
    $(".resetFont").click(function(){   
        $('html').css('font-size', originalFontSize);   
    });   
    // Increase the font size(bigger font0  
    $(".increaseFont").click(function(){   
        var currentFontSize = $('html').css('font-size');   
        var currentFontSizeNum = parseFloat(currentFontSize, 10);   
        var newFontSize = currentFontSizeNum*1.2;   
        $('html').css('font-size', newFontSize);   
        return false;   
    });   
    // Decrease the font size(smaller font)  
    $(".decreaseFont").click(function(){   
        var currentFontSize = $('html').css('font-size');   
        var currentFontSizeNum = parseFloat(currentFontSize, 10);   
        var newFontSize = currentFontSizeNum*0.8;   
        $('html').css('font-size', newFontSize);   
        return false;   
    });   
});   
  
/* 
9. Smooth(animated) page scroll( 返回页面顶部功能) 
For a smooth(animated) ride back to the top(or any location). 
*/  
$(document).ready(function() {  
    $('a[href*=#]').click(function() {   
        if (location.pathname.replace(/^///,"") == this.pathname.replace(/^///,"") && location.hostname == this.hostname) {   
            var $target = $(this.hash);   
            $target = $target.length && $target || $('[name=' + this.hash.slice(1) +']');   
            if ($target.length) {   
                var targetOffset = $target.offset().top;   
                $('html,body').animate({scrollTop: targetOffset}, 900);   
                return false;   
            }  
        }  
    });  
});  
  
/* 
11. Get the mouse cursor x and y axis(获得鼠标指针的坐标值) 
Want to know where your mouse cursor is? 
*/  
$(document).ready(function() {  
    $().mousemove(function(e){  
        // display the x and y axis values inside the div with the id XY  
        $('#XY').html("X Axis : " + e.pageX + " | Y Axis " + e.pageY);   
    });  
});  
  
/* 
12. Verify if an Element is empty(验证元素是否为空) 
This will allow you to check if an element is empty. 
*/  
$(document).ready(function() {  
    if ($('#id').html()) {  
        // do something  
    }  
});  
  
/* 
13. Replace a element(替换元素) 
Want to replace a div, or something else? 
*/  
$(document).ready(function() {   
    $('#id').replaceWith('<div>I have been replaced</div>');   
});  
  
/* 
14. jQuery timer callback functions(jQuery延时加载功能) 
Want to delay something? 
*/  
$(document).ready(function() {   
    window.setTimeout(function() {   
        // do something  
    }, 1000);   
});   
  
/* 
15. Remove a word(移除单词功能) 
Want to remove a certain word(s)? 
*/  
$(document).ready(function() {   
    var el = $('#id');   
    el.html(el.html().replace(/word/ig, ""));   
});  
  
/* 
16. Verify that an element exists in jQuery(验证元素是否存在于 jQuery 对象集合中) 
Simply test with the .length property if the element exists. 
*/  
$(document).ready(function() {   
    if ($('#id').length) {   
        // do something  
    }  
});  
  
/* 
17. Make the entire DIV clickable(使整个 Div 可点击) 
Want to make the complete div clickable? 
*/  
$(document).ready(function() {  
    $("div").click(function(){  
        // get the url from href attribute and launch the url  
        window.location=$(this).find("a").attr("href");  
        return false;   
    });  
});  
  
/* 
18. Switch between classes or id's when resizing the window.(ID与Class之间转换) 
Want to switch between a class or id, when resizing the window? 
*/  
$(document).ready(function() {   
    function checkWindowSize() {   
        if ( $(window).width() > 1200 ) {   
            $('body').addClass('large');   
        } else {  
            $('body').removeClass('large');   
        }  
    }  
    $(window).resize(checkWindowSize);   
});  
  
/* 
19. Clone a object(克隆对象) 
Clone a div or an other element. 
*/  
$(document).ready(function() {  
    var cloned = $('#id').clone();   
    });  
});  
  
/* 
20. Center an element on the screen(使元素居屏幕中间位置) 
Center an element in the center of your screen. 
*/  
$(document).ready(function() {  
    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;   
    }  
    $("#id").center();   
});  
  
/* 
21. Write our own selector(写自己的选择器) 
Write your own selectors. 
*/  
$(document).ready(function() {   
    $.extend($.expr[':'], {  
        moreThen1000px: function(a) {  
            return $(a).width() > 1000;   
    }  
    });  
    $('.box:moreThen1000px').click(function() {  
        // creating a simple js alert box  
        alert('The element that you have clicked is over 1000 pixels wide');   
    });  
});  
  
/* 
22. Count a element(统计元素个数) 
Count an element. 
*/  
$(document).ready(function() {   
    $("p").size();  
});  
  
/* 
23. Use Your Own Bullets(使用自己的 Bullets) 
Want to use your own bullets instead of using the standard or images bullets? 
*/  
$(document).ready(function() {   
    $("ul").addClass("Replaced");   
    $("ul > li").prepend("‒ ");   
});  
  
/* 
24. Let Google host jQuery for you(引用Google主机上的Jquery类库) 
Let Google host the jQuery script for you. This can be done in 2 ways. 
*/  
// Example 1  
     
  
/* 
25. Disable jQuery animations(禁用Jquery(动画)效果) 
Disable all jQuery effects 
*/  
$(document).ready(function() {   
    jQuery.fx.off = true;  
});  
  
/* 
26. No conflict-mode(与其他Javascript类库冲突解决方案) 
To avoid conflict other libraries on your website, you can use this jQuery Method, and assign a different variable name instead of the dollar sign. 
*/  
$(document).ready(function() {  
    var $jq = jQuery.noConflict();   
    $jq('#id').show();   
});
posted @ 2012-05-07 15:19  龙仪  阅读(265)  评论(0编辑  收藏  举报