JQuery 技巧和窍门整理(8个)


Posted in Javascript onApril 22, 2010

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; 
}); 
});
Javascript 相关文章推荐
jQuery插件datatables使用教程
Apr 21 Javascript
微信支付 JS API支付接口详解
Jul 11 Javascript
jquery实现左右滑动式轮播图
Mar 02 Javascript
Angular.JS中select下拉框设置value的方法
Jun 20 Javascript
es6在react中的应用代码解析
Nov 08 Javascript
详细分析JS函数去抖和节流
Dec 05 Javascript
vue2.0+koa2+mongodb实现注册登录
Apr 10 Javascript
对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍
Aug 30 Javascript
layer弹出框确定前验证:弹出消息框的方法(弹出两个layer)
Sep 21 Javascript
Postman动态获取返回值过程详解
Jun 30 Javascript
搭建vscode+vue环境的详细教程
Aug 31 Javascript
WebStorm无法正确识别Vue3组合式API的解决方案
Feb 18 Vue.js
超级酷和最实用的jQuery实例收集(20个)
Apr 21 #Javascript
基于jquery的超简单上下翻
Apr 20 #Javascript
基于jquery1.4.2的仿flash超炫焦点图播放效果
Apr 20 #Javascript
jquery 图片 上一张 下一张 链接效果(续篇)
Apr 20 #Javascript
制作高质量的JQuery Plugin 插件的方法
Apr 20 #Javascript
js 父窗口控制子窗口的行为-打开,关闭,重定位,回复
Apr 20 #Javascript
jquery+json 通用三级联动下拉列表
Apr 19 #Javascript
You might like
PHP写入WRITE编码为UTF8的文件的实现代码
2008/07/07 PHP
php 魔术方法使用说明
2009/10/20 PHP
让Laravel API永远返回JSON格式响应的方法示例
2018/09/05 PHP
PHP实现用session来实现记录用户登陆信息
2018/10/15 PHP
jquery插件珍藏(图片局部放大/信息提示框)
2013/01/08 Javascript
jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法
2013/05/13 Javascript
javascript检测对象中是否存在某个属性判断方法小结
2013/05/19 Javascript
屏蔽IE弹出&quot;您查看的网页正在试图关闭窗口,是否关闭此窗口&quot;的方法
2013/12/31 Javascript
JS简单实现String转Date的方法
2016/03/02 Javascript
Bootstrap组件学习之导航、标签、面包屑导航(精品)
2016/05/17 Javascript
JS获取地址栏参数的两种方法(简单实用)
2016/06/14 Javascript
图文详解JavaScript的原型对象及原型链
2016/08/02 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
vue中eventbus被多次触发以及踩过的坑
2017/12/02 Javascript
Angular整合zTree的示例代码
2018/01/24 Javascript
vue实现点击关注后及时更新列表功能
2018/06/26 Javascript
layui问题之自动滚动二级iframe页面到指定位置的方法
2019/09/18 Javascript
JavaScript中CreateTextFile函数
2020/08/30 Javascript
javascript实现多边形碰撞检测
2020/10/24 Javascript
[03:59]第二届DOTA2亚洲邀请赛选手传记-VGJ.rOtk
2017/04/03 DOTA
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
Python 多线程抓取图片效率对比
2016/02/27 Python
Python网络爬虫项目:内容提取器的定义
2016/10/25 Python
浅谈python之新式类
2018/08/12 Python
pandas分区间,算频率的实例
2019/07/04 Python
python递归法实现简易连连看小游戏
2020/03/25 Python
详解python路径拼接os.path.join()函数的用法
2019/10/09 Python
matplotlib绘制多子图共享鼠标光标的方法示例
2021/01/08 Python
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
应聘医学检验人员自荐信
2013/09/27 职场文书
酒店管理毕业生自荐信
2013/10/24 职场文书
2014年医学生毕业自我鉴定
2014/03/26 职场文书
客户答谢会活动方案
2014/08/31 职场文书
办公用品管理制度
2015/08/04 职场文书
用Python实现一个打字速度测试工具来测试你的手速
2021/05/28 Python
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
2022/06/14 MySQL