jQuery中需要注意的细节问题小结


Posted in Javascript onDecember 06, 2011

1. $.find()与$.children()的区别
有如下HTML片段:

<div id="div_four"> 
<input id="one"/><input id="two"/> 
<div><input id="three"/></div> 
</div>

1. find() 返回元素下所有指定元素,不限制子级的深度,如:
$("#div_four").find("input")//返回one、two、three三个input元素
2.childr() 返回元素的一级子节点元素集合,如:
$("#div_four").children("input")//返回one、two两个input元素
2. $.append()与$.appendTo()的区别
1. append():返回父元素的引用
2. appendTo():返回新创建的元素的引用
<div id="div_1"></div> 
var e = $("<h1>动态创建并添加表标题元素</h1>").appendTo($("#div_1")); 
var r = $("#div_1").append("<h1>动态创建并添加表标题元素</h1>"); 
//e 表示新创建的<h1>元素 
//r 表示$("#div_1")元素

3. 动态绑定事件和静态添加事件的区别
有了jQuery后,给元素动态绑定事件变得很简单,但传统方式直接给元素添加事件也不能忘了,但综合了jQuery和普通JavaScript的程序在使用时必须明确jQuery动态绑定事件和静态添加事件在获得事件源对象的不同之处。
<p id="p1">动态绑定事件和静态添加事件的区别</p>
<p id="p2" onclick="fun()">动态绑定事件和静态添加事件的区别</p>
<p id="p3" onclick="fun2(this)">动态绑定事件和静态添加事件的区别</p>
//1. 动态绑定事件,this即代表事件源。如:
$("#p1").click(function(){
alert($(this).text()); //this代码事件源
});
//2. 静态绑定事件时,不能直接使用this。如:
function fun(){
alert($(this).text); //不能获得<p>的内容
//3. 通过传递“this"后即可获得事件源
function fun2(obj){
alert($(obj).text());//将obj包装为jQuery对象
4. 事件处理函数中this和$(this)的区别
$("#p1").click(function(){
alert(this.innerHTML); //直接使用this
alert($(this).text()); //将this包装为jQuery对象
});
如上代码中this代表事件源对象,但直使用this时它是HTML DOM对象;
$(this)可以将HTML DOM对象包装为jQuery对象,即拥有jQuery对象的属性和方法。
5. $.remove()和$.remove(selector)的区别
两种调用形式都返回方法前选择器选中的元素
1. remove():将自身从父元素中删除【自杀】
2. remove(expr):从父元素中删除某元素【他杀】
如:
var e = $("#div_2 h1").remove();//返回删除了的h1元素
var e = $("#div_2 h1").remove("#h2");//删除id为h2的<h1>元素,返回所有h1元素
6. $.eq()和$.get()的区别
相同点:都可获得元素集合中指定第n个元素
不同点:
1. eq(n) 返回的是jQuery对象,可以直接使用jQuery内置方法,如:
$("#div_three a").eq(0).bind("click", function () { 
alert($(this).text()); 
});

2. get(n) 返回的DOM Element对象,可以直接使用HTML DOM属性和方法,如:
$("#div_three a").get(1).onclick = function () {
alert($(this).text());
};
或将对象封装成jQuery对象达到一样的效果,如:
$($("#div_three a").get(1)).bind("click",function () { 
alert($(this).text()); 
});

7. $.css(properties)和$.css(name,value)的区别
1. 语法的区别
css(properties) $("p").css({color:"red"}); 或 $("p").css({"color":"red"});
css(name,value) $("p").css("color":"red");
2.属性名的区别
css(properties):
如果样式属性名没有用引号,则必须用JavaScript语法的css样式名:如
$("p").css({color:"red",fontSize:"30px"});
如果改为“font-size”就没有效果
如果样式属性名有用引号 ,则两种样式都可以,如:
$("p").css({color:"red","font-size":"30px","fontWeight":"bold"});
css(name,value):两种形式都可以,下面两种效果一样:
$("p").css("fontSize":"30px");
$("p").css("font-size":"30px");
Javascript 相关文章推荐
javascript学习笔记(七)Ajax和Http状态码
Oct 08 Javascript
innerHTML中标签可以换行的方法汇总
Aug 14 Javascript
基于jquery实现省市联动效果
Nov 23 Javascript
js滚动条平滑移动示例代码
Mar 29 Javascript
JS留言功能的简单实现案例(推荐)
Jun 23 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
Dec 07 Javascript
使用clipboard.js实现复制功能的示例代码
Oct 16 Javascript
超出JavaScript安全整数限制的数字计算BigInt详解
Jun 24 Javascript
解决jquery有正确返回值但不执行success函数的问题
Aug 20 jQuery
vue-cli项目无法用本机IP访问的解决方法
Sep 20 Javascript
关于layui时间回显问题的解决方法
Sep 24 Javascript
一起深入理解js中的事件对象
Feb 06 Javascript
jQuery load方法用法集锦
Dec 06 #Javascript
基于JQuery实现的类似购物商城的购物车
Dec 06 #Javascript
使用Jquery来实现可以输入值的下拉选单 雏型
Dec 06 #Javascript
js Function类型
Dec 04 #Javascript
Javascript base64编码实现代码
Dec 02 #Javascript
JS获取页面窗口大小的代码解读
Dec 01 #Javascript
基于JQuery的抓取博客园首页RSS的代码
Dec 01 #Javascript
You might like
php通过ajax实现双击table修改内容
2014/04/28 PHP
PHP中常见的密码处理方式和建议总结
2018/10/14 PHP
javascript里的条件判断
2007/02/27 Javascript
JavaScript 上万关键字瞬间匹配实现代码
2013/07/07 Javascript
JavaScript设置首页和收藏页面的小例子
2013/11/11 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
jQuery中has()方法用法实例
2015/01/06 Javascript
javascript编写贪吃蛇游戏
2015/07/07 Javascript
基于JavaScript实现动态创建表格和增加表格行数
2015/12/20 Javascript
JavaScript获取URL中参数querystring的方法详解
2016/10/11 Javascript
实现一个简单的vue无限加载指令方法
2017/01/10 Javascript
Bootstrap的popover(弹出框)在append后弹不出(失效)
2017/02/27 Javascript
基于angular实现模拟微信小程序swiper组件
2017/06/11 Javascript
基于模板引擎Jade的应用(详解)
2017/12/12 Javascript
用 js 写一个 js 解释器过程详解
2019/08/02 Javascript
HTML+JS实现“代码雨”效果源码(黑客帝国文字下落效果)
2020/03/17 Javascript
[02:57]2014DOTA2国际邀请赛-观众采访
2014/07/19 DOTA
[01:06:19]DOTA2-DPC中国联赛定级赛 LBZS vs SAG BO3第二场 1月8日
2021/03/11 DOTA
Python中逗号的三种作用实例分析
2015/06/08 Python
一个基于flask的web应用诞生 组织结构调整(7)
2017/04/11 Python
Python实现的文本编辑器功能示例
2017/06/30 Python
python实现基于SVM手写数字识别功能
2020/05/27 Python
PyCharm设置SSH远程调试的方法
2018/07/17 Python
关于Pytorch的MNIST数据集的预处理详解
2020/01/10 Python
使用Python防止SQL注入攻击的实现示例
2020/05/21 Python
解决Django响应JsonResponse返回json格式数据报错问题
2020/08/09 Python
HTML5实现文件断点续传的方法
2017/01/04 HTML / CSS
中国酒类在线零售网站:酒仙网
2016/08/20 全球购物
人力资源主管的岗位职责
2014/03/15 职场文书
组织鉴定材料
2014/06/02 职场文书
教师查摆问题及整改措施
2014/10/11 职场文书
创业计划书之面包店
2019/09/12 职场文书
用 Python 元类的特性实现 ORM 框架
2021/05/19 Python
Python中使用Opencv开发停车位计数器功能
2022/04/04 Python
MySQL创建管理子分区
2022/04/13 MySQL
MySQL约束(创建表时的各种条件说明)
2022/06/21 MySQL