本文列出jquery一些应用小技巧,比如有禁止右键点击、隐藏搜索文本框文 字、在新窗口中打开链接、检测浏览器、预加载图片、页面样式切换、所有列等高、动态控制页面字体大小、获得鼠标指针的X值Y值、验证元素是否为空、替换元 素、延迟加载、验证元素是否存在于Jquery集合中、使DIV可点击、克隆对象、使元素居中、计算元素个数、使用Google主机上的Jquery类 库、禁用Jquery效果、解决Jquery类库与其他Javascript类库冲突问题。

请看下文jquery技巧:

1、禁止右键点击

       $(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'));   

       });   

         

           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、 在新窗口中打开链接

       $(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";   

          });   

       });   

   // how to use   

   <A href="http://huhaiqia.blog.163.com/blog/​​http://www.opensourcehunter.com​​" rel=external>open link</A> 

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="http://huhaiqia.blog.163.com/blog/default.css" type=text/css rel=stylesheet>   

       // the links   

   <A class=Styleswitcher href="http://huhaiqia.blog.163.com/blog/#" rel=default.css>Default Theme</A>   

   <A class=Styleswitcher href="http://huhaiqia.blog.163.com/blog/#" rel=red.css>Red Theme</A>   

   <A class=Styleswitcher href="http://huhaiqia.blog.163.com/blog/#" rel=blue.css>Blue Theme</A>   

   }); 

7、列高度相同如果使用了两个CSS列,使用此种方式可以是两列的高度相同。

       $(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、 动态控制页面字体大小用户可以改变页面字体大小

       $(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、返回页面顶部功能

       $(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;   

      }   

     }   

     });   

   // how to use   

   // place this where you want to scroll to   

   <A name=top></A>   

   // the link   

   <A href="http://huhaiqia.blog.163.com/blog/#top">go to top</A>   

   }); 

10、获得鼠标指针XY值

       $(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);   

         });   

       // how to use   

       <DIV id=XY></DIV>   

         

       }); 

11、验证元素是否为空

       $(document).ready(function() {   

         if ($('#id').html()) {   

          // do something   

          }   

       }); 

12、替换元素

       $(document).ready(function() {   

          $('#id').replaceWith(' 

       <DIV>I have been replaced</DIV> 

        

       ');   

       }); 

13、jQuery延时加载功能

       $(document).ready(function() {   

          window.setTimeout(function() {   

            // do something   

          }, 1000);   

       }); 

14、 移除单词功能

       $(document).ready(function() {   

          var el = $('#id');   

          el.html(el.html().replace(/word/ig, ""));   

       }); 

15、验证元素是否存在于Jquery对象集合中

       $(document).ready(function() {   

          if ($('#id').length) {   

         // do something   

         }   

       }); 

16、使整个DIV可点击

       $(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;   

           });   

       // how to use   

       <DIV><A href="http://huhaiqia.blog.163.com/blog/index.html">home</A></DIV>   

         

       }); 

17、ID与Class之间转换当改变Window大小时,在ID与Class之间切换

       $(document).ready(function() {   

          function checkWindowSize() {   

           if ( $(window).width() > 1200 ) {   

               $('body').addClass('large');   

           }   

           else {   

               $('body').removeClass('large');   

           }   

          }   

   $(window).resize(checkWindowSize);   

   });

18、克隆对象

       $(document).ready(function() {   

          var cloned = $('#id').clone();   

       // how to use   

       <DIV id=id></DIV>   

         

       }); 

18、使元素居屏幕中间位置

       $(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();   

       }); 

19、写自己的选择器

       $(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');   

     });   

   }); 

20、统计元素个数

       $(document).ready(function() {   

          $("p").size();   

       }); 

21、使用自己的 Bullets

       $(document).ready(function() {   

          $("ul").addClass("Replaced");   

          $("ul > li").prepend("? ");   

        // how to use   

        ul.Replaced { list-style : none; }   

       }); 

22、引用Google主机上的Jquery类库Let Google host the jQuery script for you. This can be done in 2 ways.

       //Example 1   

       <SCRIPT src="http://huhaiqia.blog.163.com/blog/​​http://www.google.com/jsapi"></SCRIPT​​>   

       <SCRIPT type=text/javascript> 

       google.load("jquery", "1.2.6"); 

       google.setOnLoadCallback(function() { 

           // do something 

       }); 

       </SCRIPT><SCRIPT src="http://huhaiqia.blog.163.com/blog/​​http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js​​" type=text/javascript></SCRIPT>   

         

    // Example 2:(the best and fastest way)   

   <SCRIPT src="http://huhaiqia.blog.163.com/blog/​​http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js​​" type=text/javascript></SCRIPT> 

23、禁用Jquery(动画)效果

       $(document).ready(function() {   

           jQuery.fx.off = true;   

       }); 

24、 与其他Javascript类库冲突解决方案

       $(document).ready(function() {   

          var $jq = jQuery.noConflict();   

          $jq('#id').show();   

       });


 

本文列出jquery一些应用小技巧,比如有禁止右键点击、隐藏搜索文本框文 字、在新窗口中打开链接、检测浏览器、预加载图片、页面样式切换、所有列等高、动态控制页面字体大小、获得鼠标指针的X值Y值、验证元素是否为空、替换元 素、延迟加载、验证元素是否存在于Jquery集合中、使DIV可点击、克隆对象、使元素居中、计算元素个数、使用Google主机上的Jquery类 库、禁用Jquery效果、解决Jquery类库与其他Javascript类库冲突问题。

请看下文jquery技巧:

1、禁止右键点击

       $(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'));   

       });   

         

           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、 在新窗口中打开链接

       $(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";   

          });   

       });   

   // how to use   

   <A href="http://huhaiqia.blog.163.com/blog/​​http://www.opensourcehunter.com​​" rel=external>open link</A> 

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="http://huhaiqia.blog.163.com/blog/default.css" type=text/css rel=stylesheet>   

       // the links   

   <A class=Styleswitcher href="http://huhaiqia.blog.163.com/blog/#" rel=default.css>Default Theme</A>   

   <A class=Styleswitcher href="http://huhaiqia.blog.163.com/blog/#" rel=red.css>Red Theme</A>   

   <A class=Styleswitcher href="http://huhaiqia.blog.163.com/blog/#" rel=blue.css>Blue Theme</A>   

   }); 

7、列高度相同如果使用了两个CSS列,使用此种方式可以是两列的高度相同。

       $(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、 动态控制页面字体大小用户可以改变页面字体大小

       $(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、返回页面顶部功能

       $(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;   

      }   

     }   

     });   

   // how to use   

   // place this where you want to scroll to   

   <A name=top></A>   

   // the link   

   <A href="http://huhaiqia.blog.163.com/blog/#top">go to top</A>   

   }); 

10、获得鼠标指针XY值

       $(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);   

         });   

       // how to use   

       <DIV id=XY></DIV>   

         

       }); 

11、验证元素是否为空

       $(document).ready(function() {   

         if ($('#id').html()) {   

          // do something   

          }   

       }); 

12、替换元素

       $(document).ready(function() {   

          $('#id').replaceWith(' 

       <DIV>I have been replaced</DIV> 

        

       ');   

       }); 

13、jQuery延时加载功能

       $(document).ready(function() {   

          window.setTimeout(function() {   

            // do something   

          }, 1000);   

       }); 

14、 移除单词功能

       $(document).ready(function() {   

          var el = $('#id');   

          el.html(el.html().replace(/word/ig, ""));   

       }); 

15、验证元素是否存在于Jquery对象集合中

       $(document).ready(function() {   

          if ($('#id').length) {   

         // do something   

         }   

       }); 

16、使整个DIV可点击

       $(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;   

           });   

       // how to use   

       <DIV><A href="http://huhaiqia.blog.163.com/blog/index.html">home</A></DIV>   

         

       }); 

17、ID与Class之间转换当改变Window大小时,在ID与Class之间切换

       $(document).ready(function() {   

          function checkWindowSize() {   

           if ( $(window).width() > 1200 ) {   

               $('body').addClass('large');   

           }   

           else {   

               $('body').removeClass('large');   

           }   

          }   

   $(window).resize(checkWindowSize);   

   });

18、克隆对象

       $(document).ready(function() {   

          var cloned = $('#id').clone();   

       // how to use   

       <DIV id=id></DIV>   

         

       }); 

18、使元素居屏幕中间位置

       $(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();   

       }); 

19、写自己的选择器

       $(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');   

     });   

   }); 

20、统计元素个数

       $(document).ready(function() {   

          $("p").size();   

       }); 

21、使用自己的 Bullets

       $(document).ready(function() {   

          $("ul").addClass("Replaced");   

          $("ul > li").prepend("? ");   

        // how to use   

        ul.Replaced { list-style : none; }   

       }); 

22、引用Google主机上的Jquery类库Let Google host the jQuery script for you. This can be done in 2 ways.

       //Example 1   

       <SCRIPT src="http://huhaiqia.blog.163.com/blog/​​http://www.google.com/jsapi"></SCRIPT​​>   

       <SCRIPT type=text/javascript> 

       google.load("jquery", "1.2.6"); 

       google.setOnLoadCallback(function() { 

           // do something 

       }); 

       </SCRIPT><SCRIPT src="http://huhaiqia.blog.163.com/blog/​​http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js​​" type=text/javascript></SCRIPT>   

         

    // Example 2:(the best and fastest way)   

   <SCRIPT src="http://huhaiqia.blog.163.com/blog/​​http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js​​" type=text/javascript></SCRIPT> 

23、禁用Jquery(动画)效果

       $(document).ready(function() {   

           jQuery.fx.off = true;   

       }); 

24、 与其他Javascript类库冲突解决方案

       $(document).ready(function() {   

          var $jq = jQuery.noConflict();   

          $jq('#id').show();   

       });