JQuery 技巧和窍门整理(8个) |
本文标签:JQuery,技巧 1. 新窗口打开链接 XHTML 1.0 Strict 版本不支持 target="_blank" 属性,而使用 JQuery 能很好地解决这个问题,实现新窗口打开网页: 复制代码 代码如下: $(a[@rel$=external]).click(function(){ this.target = "_blank"; }); /* Usage: <a href="http://www.mangguo.org/" rel="external">mangguo.org</a> */ 2. 获得匹配元素的总数 以下代码将返回匹配元素的数目: $(element).size(); 3. 预加载图像 当使用 Javascript 处理图像载入时,可以使用图像实现预加载: 复制代码 代码如下: jQuery.preloadImages = function() { for(var i = 0; i").attr("src", arguments[i]); } }; // Usage $.preloadImages("image1.gif", "/path/to/image2.png", "some/image3.jpg"); 4. 检测浏览器 根据不同浏览器加载不同 CSS 能防止因浏览器差异造成的样式表渲染差异,使用 JQuery 可以轻松实现: 复制代码 代码如下: //A. Target Safari if( $.browser.safari ) $("#menu li a").css("padding", "1em 1.2em" ); //B. Target anything above IE6 if ($.browser.msie && $.browser.version > 6 ) $("#menu li a").css("padding", "1em 1.8em" ); //C. Target IE6 and below if ($.browser.msie && $.browser.version <= 6 ) $("#menu li a").css("padding", "1em 1.8em" ); //D. Target Firefox 2 and above if ($.browser.mozilla && $.browser.version >= "1.8" ) $("#menu li a").css("padding", "1em 1.8em" ); 5. 字符串替换 用 JQuery 能对文本内容中的特定字符串进行替换操作: 复制代码 代码如下: var el = $(#id); el.html(el.html().replace(/word/ig, "")); 6. 列高度相等 用 CSS 实现两列高度相等并不容易,JQuery 能帮你解决: 复制代码 代码如下: function equalHeight(group) { tallest = 0; group.each(function() { thisHeight = $(this).height(); if(thisHeight > tallest) { tallest = thisHeight; } }); group.height(tallest); } /* Usage: $(document).ready(function() { equalHeight($(".recent-article")); equalHeight($(".footer-col")); }); */ 7. 字体大小重设 字体大小重设是一个非常常用的功能: 复制代码 代码如下: $(document).ready(function(){ // Reset Font Size var originalFontSize = $(html).css(font-size); $(".resetFont").click(function(){ $(html).css(font-size, originalFontSize); }); // Increase Font Size $(".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 Font Size $(".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; }); }); 8. 禁用右键菜单 有许多 JavaScript 代码段可禁用右键菜单,但 JQuery 使操作变得更容易: 复制代码 代码如下: $(document).ready(function(){ $(document).bind("contextmenu",function(e){ return false; }); }); |