Jquery使用小技巧 转载

 1. 禁止右键点击

1. 禁止右键点击
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function(){   
 
2.           $(document).bind("contextmenu",function(e){   
 
3.               return false;   
 
4.           });   
 
5.       });  
 
2. 隐藏搜索文本框文字
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.       $("input.text1").val("Enter your search text here");   
 
3.          textFill($('input.text1'));   
 
4.       });   
 
5.         
 
6.           function textFill(input){ //input focus text function   
 
7.           var originalvalue = input.val();   
 
8.           input.focus( function(){   
 
9.               if( $.trim(input.val()) == originalvalue ){ input.val(''); }   
 
10.       });   
 
11.       input.blur( function(){   
 
12.           if( $.trim(input.val()) == '' ){ input.val(originalvalue); }   
 
13.       });   
 
14.   }  
 
3. 在新窗口中打开链接
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          //Example 1: Every link will open in a new window   
 
3.          $('a[href^="http://"]').attr("target", "_blank");   
 
4.         
 
5.          //Example 2: Links with the rel="external" attribute will only open in a new window   
 
6.          $('a[@rel$='external']').click(function(){   
 
7.             this.target = "_blank";   
 
8.          });   
 
9.       });   
 
10.   // how to use   
 
11.   <A href="http://www.opensourcehunter.com" rel=external>open link</A>  
4. 检测浏览器
 
注: 在版本jQuery 1.4中,$.support 替换掉了$.browser 变量。
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.       // Target Firefox 2 and above   
 
3.       if ($.browser.mozilla && $.browser.version >= "1.8" ){   
 
4.           // do something   
 
5.       }   
 
6.         
 
7.       // Target Safari   
 
8.       if( $.browser.safari ){   
 
9.           // do something   
 
10.   }   
 
11.     
 
12.   // Target Chrome   
 
13.   if( $.browser.chrome){   
 
14.       // do something   
 
15.   }   
 
16.     
 
17.   // Target Camino   
 
18.   if( $.browser.camino){   
 
19.       // do something   
 
20.   }   
 
21.     
 
22.   // Target Opera   
 
23.   if( $.browser.opera){   
 
24.       // do something   
 
25.   }   
 
26.     
 
27.   // Target IE6 and below   
 
28.   if ($.browser.msie && $.browser.version <= 6 ){   
 
29.       // do something   
 
30.   }   
 
31.     
 
32.   // Target anything above IE6   
 
33.   if ($.browser.msie && $.browser.version > 6){   
 
34.       // do something   
 
35.   }   
 
36.   });  
5. 预加载图片
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          jQuery.preloadImages = function()   
 
3.         {   
 
4.            for(var i = 0; i").attr("src", arguments[i]);  
 
5.         }  
 
6.       };  
 
7.       // how to use  
 
8.       $.preloadImages("image1.jpg");   
 
9.       });  
6. 页面样式切换
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.           $("a.Styleswitcher").click(function() {   
 
3.               //swicth the LINK REL attribute with the value in A REL attribute   
 
4.               $('link[rel=stylesheet]').attr('href' , $(this).attr('rel'));   
 
5.           });   
 
6.       // how to use   
 
7.       // place this in your header   
 
8.       <LINK href="default.css" type=text/css rel=stylesheet>   
 
9.       // the links   
 
10.   <A class="Styleswitcher" href="#" rel=default.css>Default Theme</A>   
 
11.   <A class="Styleswitcher" href="#" rel=red.css>Red Theme</A>   
 
12.   <A class="Styleswitcher" href="#" rel=blue.css>Blue Theme</A>   
 
13.   });  
7. 列高度相同
 
如果使用了两个CSS列,使用此种方式可以是两列的高度相同。
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.       function equalHeight(group) {   
 
3.           tallest = 0;   
 
4.           group.each(function() {   
 
5.               thisHeight = $(this).height();   
 
6.               if(thisHeight > tallest) {   
 
7.                   tallest = thisHeight;   
 
8.               }   
 
9.           });   
 
10.       group.height(tallest);   
 
11.   }   
 
12.   // how to use   
 
13.   $(document).ready(function() {   
 
14.       equalHeight($(".left"));   
 
15.       equalHeight($(".right"));   
 
16.   });   
 
17.   });  
8. 动态控制页面字体大小
 
用户可以改变页面字体大小
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.         // Reset the font size(back to default)   
 
3.         var originalFontSize = $('html').css('font-size');   
 
4.           $(".resetFont").click(function(){   
 
5.           $('html').css('font-size', originalFontSize);   
 
6.         });   
 
7.         // Increase the font size(bigger font0   
 
8.         $(".increaseFont").click(function(){   
 
9.           var currentFontSize = $('html').css('font-size');   
 
10.       var currentFontSizeNum = parseFloat(currentFontSize, 10);   
 
11.       var newFontSize = currentFontSizeNum*1.2;   
 
12.       $('html').css('font-size', newFontSize);   
 
13.       return false;   
 
14.     });   
 
15.     // Decrease the font size(smaller font)   
 
16.     $(".decreaseFont").click(function(){   
 
17.       var currentFontSize = $('html').css('font-size');   
 
18.       var currentFontSizeNum = parseFloat(currentFontSize, 10);   
 
19.       var newFontSize = currentFontSizeNum*0.8;   
 
20.       $('html').css('font-size', newFontSize);   
 
21.       return false;   
 
22.     });   
 
23.   });  
9. 返回页面顶部功能
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.       $('a[href*=#]').click(function() {   
 
3.        if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')   
 
4.        && location.hostname == this.hostname) {   
 
5.          var $target = $(this.hash);   
 
6.          $target = $target.length && $target   
 
7.          || $('[name=' + this.hash.slice(1) +']');   
 
8.          if ($target.length) {   
 
9.         var targetOffset = $target.offset().top;   
 
10.     $('html,body')   
 
11.     .animate({scrollTop: targetOffset}, 900);   
 
12.       return false;   
 
13.      }   
 
14.     }   
 
15.     });   
 
16.   // how to use   
 
17.   // place this where you want to scroll to   
 
18.   <A name=top></A>   
 
19.   // the link   
 
20.   <A href="#top">go to top</A>   
 
21.   });  
11.获得鼠标指针XY值
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          $().mousemove(function(e){   
 
3.            //display the x and y axis values inside the div with the id XY   
 
4.           $('#XY').html("X Axis : " + e.pageX + " | Y Axis " + e.pageY);   
 
5.         });   
 
6.       // how to use   
 
7.       <DIV id=XY></DIV>   
 
8.         
 
9.       });  
12. 验证元素是否为空
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.         if ($('#id').html()) {   
 
3.          // do something   
 
4.          }   
 
5.       });  
13. 替换元素
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          $('#id').replaceWith('  
 
3.       <DIV>I have been replaced</DIV>  
 
4.        
 
5.       ');   
 
6.       });  
 
14. jQuery延时加载功能
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          window.setTimeout(function() {   
 
3.            // do something   
 
4.          }, 1000);   
 
5.       });  
 
15. 移除单词功能
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          var el = $('#id');   
 
3.          el.html(el.html().replace(/word/ig, ""));   
 
4.       });  
 
16. 验证元素是否存在于Jquery对象集合中
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          if ($('#id').length) {   
 
3.         // do something   
 
4.         }   
 
5.       });  
 
17. 使整个DIV可点击
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.           $("div").click(function(){   
 
3.             //get the url from href attribute and launch the url   
 
4.             window.location=$(this).find("a").attr("href"); return false;   
 
5.           });   
 
6.       // how to use   
 
7.       <DIV><A href="index.html">home</A></DIV>   
 
8.         
 
9.       });  
 
18.ID与Class之间转换
 
当改变Window大小时,在ID与Class之间切换
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          function checkWindowSize() {   
 
3.           if ( $(window).width() > 1200 ) {   
 
4.               $('body').addClass('large');   
 
5.           }   
 
6.           else {   
 
7.               $('body').removeClass('large');   
 
8.           }   
 
9.          }   
 
10.   $(window).resize(checkWindowSize);   
 
11.   });  
 
19. 克隆对象
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          var cloned = $('#id').clone();   
 
3.       // how to use   
 
4.       <DIV id=id></DIV>   
 
5.         
 
6.       });  
 
20. 使元素居屏幕中间位置
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.         jQuery.fn.center = function () {   
 
3.             this.css("position","absolute");   
 
4.             this.css("top", ( $(window).height() - this.height() ) / 2+$(window).scrollTop() + "px");   
 
5.             this.css("left", ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + "px");   
 
6.             return this;   
 
7.         }   
 
8.         $("#id").center();   
 
9.       });  
 
21. 写自己的选择器
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          $.extend($.expr[':'], {   
 
3.              moreThen1000px: function(a) {   
 
4.                  return $(a).width() > 1000;   
 
5.             }   
 
6.          });   
 
7.         $('.box:moreThen1000px').click(function() {   
 
8.             // creating a simple js alert box   
 
9.             alert('The element that you have clicked is over 1000 pixels wide');   
 
10.     });   
 
11.   });  
 
22. 统计元素个数
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          $("p").size();   
 
3.       });  
 
23. 使用自己的 Bullets
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          $("ul").addClass("Replaced");   
 
3.          $("ul > li").prepend("? ");   
 
4.        // how to use   
 
5.        ul.Replaced { list-style : none; }   
 
6.       });  
 
24. 引用Google主机上的Jquery类库
 
Let Google host the jQuery script for you. This can be done in 2 ways.
 
view plaincopy to clipboardprint?
 
1.       //Example 1   
 
2.       <SCRIPT src="http://www.google.com/jsapi"></SCRIPT>   
 
3.       <SCRIPT type=text/javascript>  
 
4.       google.load("jquery", "1.2.6");  
 
5.       google.setOnLoadCallback(function() {  
 
6.           // do something  
 
7.       });  
 
8.       </SCRIPT><SCRIPT src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type=text/javascript></SCRIPT>   
 
9.         
 
10.    // Example 2:(the best and fastest way)   
 
11.   <SCRIPT src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type=text/javascript></SCRIPT>  
 
 
 
25. 禁用Jquery(动画)效果
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.           jQuery.fx.off = true;   
 
3.       });  
 
26. 与其他Javascript类库冲突解决方案
 
view plaincopy to clipboardprint?
 
1.       $(document).ready(function() {   
 
2.          var $jq = jQuery.noConflict();   
 
3.          $jq('#id').show();   
 
4.       });  
$(document).ready(function(){
    $(document).bind("contextmenu",function(e){
        return false;
    });
});

2. 隐藏搜索文本框文字

$(document).ready(function() { 
    $("input.text1").val("Enter your search text here"); 
    textFill($('input.text1'));
}); 

//input focus text function
function textFill(input){
    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. 在新窗口中打开链接

$(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. 检测浏览器
注: 在版本jQuery 1.4中,$.support 替换掉了$.browser 变量。

$(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. 预加载图片

$(document).ready(function() {
   jQuery.preloadImages = function()
  {
     for(var i = 0; i").attr("src", arguments[i]);
  }
};
// how to use
$.preloadImages("image1.jpg");
});

6. 页面样式切换

$(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'));
   });
    // how to use
    // place this in your header
    <LINK href="default.css" type=text/css rel=stylesheet>
    // the links
    <A class="Styleswitcher" href="#" rel=default.css>Default Theme</A>
    <A class="Styleswitcher" href="#" rel=red.css>Red Theme</A>
    <A class="Styleswitcher" href="#" rel=blue.css>Blue Theme</A>
});

7. 列高度相同

$(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
    $(document).ready(function() {
    equalHeight($(".left"));
    equalHeight($(".right"));
    });
});

8. 动态控制页面字体大小
用户可以改变页面字体大小
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.         // Reset the font size(back to default)   
3.         var originalFontSize = $('html').css('font-size');   
4.           $(".resetFont").click(function(){   
5.           $('html').css('font-size', originalFontSize);   
6.         });   
7.         // Increase the font size(bigger font0   
8.         $(".increaseFont").click(function(){   
9.           var currentFontSize = $('html').css('font-size');   
10.       var currentFontSizeNum = parseFloat(currentFontSize, 10);   
11.       var newFontSize = currentFontSizeNum*1.2;   
12.       $('html').css('font-size', newFontSize);   
13.       return false;   
14.     });   
15.     // Decrease the font size(smaller font)   
16.     $(".decreaseFont").click(function(){   
17.       var currentFontSize = $('html').css('font-size');   
18.       var currentFontSizeNum = parseFloat(currentFontSize, 10);   
19.       var newFontSize = currentFontSizeNum*0.8;   
20.       $('html').css('font-size', newFontSize);   
21.       return false;   
22.     });   
23.   });  9. 返回页面顶部功能
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.       $('a[href*=#]').click(function() {   
3.        if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')   
4.        && location.hostname == this.hostname) {   
5.          var $target = $(this.hash);   
6.          $target = $target.length && $target   
7.          || $('[name=' + this.hash.slice(1) +']');   
8.          if ($target.length) {   
9.         var targetOffset = $target.offset().top;   
10.     $('html,body')   
11.     .animate({scrollTop: targetOffset}, 900);   
12.       return false;   
13.      }   
14.     }   
15.     });   
16.   // how to use   
17.   // place this where you want to scroll to   
18.   <A name=top></A>   
19.   // the link   
20.   <A href="#top">go to top</A>   
21.   });  11.获得鼠标指针XY值
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          $().mousemove(function(e){   
3.            //display the x and y axis values inside the div with the id XY   
4.           $('#XY').html("X Axis : " + e.pageX + " | Y Axis " + e.pageY);   
5.         });   
6.       // how to use   
7.       <DIV id=XY></DIV>   
8.         
9.       });  12. 验证元素是否为空
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.         if ($('#id').html()) {   
3.          // do something   
4.          }   
5.       });  13. 替换元素
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          $('#id').replaceWith('  
3.       <DIV>I have been replaced</DIV>  
4.        
5.       ');   
6.       });  
14. jQuery延时加载功能
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          window.setTimeout(function() {   
3.            // do something   
4.          }, 1000);   
5.       });  
15. 移除单词功能
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          var el = $('#id');   
3.          el.html(el.html().replace(/word/ig, ""));   
4.       });  
16. 验证元素是否存在于Jquery对象集合中
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          if ($('#id').length) {   
3.         // do something   
4.         }   
5.       });  
17. 使整个DIV可点击
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.           $("div").click(function(){   
3.             //get the url from href attribute and launch the url   
4.             window.location=$(this).find("a").attr("href"); return false;   
5.           });   
6.       // how to use   
7.       <DIV><A href="index.html">home</A></DIV>   
8.         
9.       });  
18.ID与Class之间转换
当改变Window大小时,在ID与Class之间切换
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          function checkWindowSize() {   
3.           if ( $(window).width() > 1200 ) {   
4.               $('body').addClass('large');   
5.           }   
6.           else {   
7.               $('body').removeClass('large');   
8.           }   
9.          }   
10.   $(window).resize(checkWindowSize);   
11.   });  
19. 克隆对象
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          var cloned = $('#id').clone();   
3.       // how to use   
4.       <DIV id=id></DIV>   
5.         
6.       });  
20. 使元素居屏幕中间位置
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.         jQuery.fn.center = function () {   
3.             this.css("position","absolute");   
4.             this.css("top", ( $(window).height() - this.height() ) / 2+$(window).scrollTop() + "px");   
5.             this.css("left", ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + "px");   
6.             return this;   
7.         }   
8.         $("#id").center();   
9.       });  
21. 写自己的选择器
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          $.extend($.expr[':'], {   
3.              moreThen1000px: function(a) {   
4.                  return $(a).width() > 1000;   
5.             }   
6.          });   
7.         $('.box:moreThen1000px').click(function() {   
8.             // creating a simple js alert box   
9.             alert('The element that you have clicked is over 1000 pixels wide');   
10.     });   
11.   });  
22. 统计元素个数
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          $("p").size();   
3.       });  
23. 使用自己的 Bullets
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          $("ul").addClass("Replaced");   
3.          $("ul > li").prepend("? ");   
4.        // how to use   
5.        ul.Replaced { list-style : none; }   
6.       });  
24. 引用Google主机上的Jquery类库
Let Google host the jQuery script for you. This can be done in 2 ways.
view plaincopy to clipboardprint?
1.       //Example 1   
2.       <SCRIPT src="http://www.google.com/jsapi"></SCRIPT>   
3.       <SCRIPT type=text/javascript>  
4.       google.load("jquery", "1.2.6");  
5.       google.setOnLoadCallback(function() {  
6.           // do something  
7.       });  
8.       </SCRIPT><SCRIPT src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type=text/javascript></SCRIPT>   
9.         
10.    // Example 2:(the best and fastest way)   
11.   <SCRIPT src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type=text/javascript></SCRIPT>  
 
25. 禁用Jquery(动画)效果
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.           jQuery.fx.off = true;   
3.       });  
26. 与其他Javascript类库冲突解决方案
view plaincopy to clipboardprint?
1.       $(document).ready(function() {   
2.          var $jq = jQuery.noConflict();   
3.          $jq('#id').show();   
4.       });  

 

posted @ 2010-06-12 14:59  银色奇迹  阅读(412)  评论(2编辑  收藏  举报