jQuery常见面试题之DOM操作详析


Posted in jQuery onJuly 05, 2017

前言

关于JQ的DOM操作面试问题很多,可以从各个点问,所以列举几个常见问题,毕竟面试只是过程,重要的是知识自己掌握了。

面试题一:JQ中html()、text()和val()区别?

面试题二:JQ中find()、has()和filter()区别?

面试题三: closet()和parents()区别?

答案请在文中查找...

DOM操作有三类:DOM-core、HTML-DOM 、CSS-DOM

一、插入节点

我们用的最多的就是append和apendTo,其实共有8种方法。

jQuery常见面试题之DOM操作详析
插入节点

二、删除节点

remove() :删除节点,并删除元素节点绑定的事件。

empty() :清空节点元素的内容,类似$().html(' ')

三、克隆(复制)节点

$().clone() ,只复制节点,不复制方法和事件。

添加clone(true) ,不仅复制节点,也复制方法,也叫深度克隆。

四、替换节点

$('new').replaceWith('old')  ,返回new元素。

$('old').replaceAll('new') ,返回old元素。

如果在替换之前,已为元素绑定事件,替换后原有绑定事件将会被替换的元素一起消失,需要在新元素上重新绑定事件。

五、包裹节点

$('span').wrapAll('<div>') :将所有元素用一个元素包裹。

wrap() :将所有元素单独包裹。

wrapInner:包裹元素内容。

unwrap() :删除包裹,删除父元素,不包含body。

六、遍历节点

children() :只考虑子元素,不考虑后代元素。

next() :同辈紧邻后面一个元素。

nextAll() :同辈紧邻后面所有兄弟元素。

prev() :同辈紧邻前一个兄弟元素。

prevAll() :同辈紧邻前所有兄弟元素。

siblings() :同辈所有兄弟元素。

find('span') :返回被选元素的后代元素,括号内必填写,如果查找所有后代使用 "*",起查找作用。

filter('div') :指定选择器的xx元素,括号内必填写,符合条件的同级元素,非后代元素,起过滤作用。

has(‘div') :符合条件的后代元素,不包含自身,括号内必填写,起过滤作用。

parents() :获取所有祖先元素,参数为筛选条件。

closest(‘.new') :用来取得最近的匹配元素,包括自身。首选检查自身是否符合,如果符合返回元素本身;如果不匹配,向上查找父元素,逐级向上直到匹配到选择器的元素。如果什么没找到,返回一个空的jq对象。必须填写筛选条件,且只能找到一个元素。

parentsUntil() :截止到xx位置的祖先节点。

七、属性及样式操作

$().css() :修改css样式。设置后,显示为内联样式。

$().attr('title') :获取title属性。

$().removeAttr(title') :删除title属性。

$().addClass(‘new') :添加class的名字,不是选择器,故不是“.new”。

$().removeClass(‘new') :与上相反。

$().toggle()

$().toggleClass()

$().hasClass() :判断某元素是否有某个class。

八、内容操作

$().html() :获取内容,含html标签,可以用于XHTML,但不能用于XML。

$().text() :获取文本内容,不含标签。可以用于XHTML和XML,支持所有浏览器,原生innerText火狐不支持。

$().val() :获取表单元素的内容。

下面说说三者的异同点:

jQuery常见面试题之DOM操作详析
异同点

九、其它节点操作

$('div').slice(1,4) ,获取满足条件的div。

$('div').add('p').css() ,自由组合添加样式,给div和p都添加公有的样式。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

jQuery 相关文章推荐
jQuery实现 RadioButton做必选校验功能
Jun 15 jQuery
jQuery实现可拖动进度条实例代码
Jun 21 jQuery
使用jquery的jsonp如何发起跨域请求及其原理详解
Aug 17 jQuery
Mui使用jquery并且使用点击跳转新窗口的实例
Aug 19 jQuery
jQuery自动或手动图片切换效果
Oct 11 jQuery
基于jQuery实现的设置文本区域的光标位置
Jun 15 jQuery
js/jQuery实现全选效果
Jun 17 jQuery
JQuery中DOM节点的操作与访问方法实例分析
Dec 23 jQuery
jquery实现直播视频弹幕效果
Feb 25 jQuery
jQuery 移除事件的方法
Jun 20 jQuery
jquery实现淡入淡出轮播图效果
Dec 13 jQuery
jQuery使用ajax_动力节点Java学院整理
Jul 05 #jQuery
jQuery扩展_动力节点Java学院整理
Jul 05 #jQuery
jQuery选择器_动力节点Java学院整理
Jul 05 #jQuery
jQuery事件_动力节点Java学院整理
Jul 05 #jQuery
jQuery修改DOM结构_动力节点Java学院整理
Jul 05 #jQuery
jQuery实现返回顶部按钮和scroll滚动功能[带动画效果]
Jul 05 #jQuery
jquery拖动改变div大小
Jul 04 #jQuery
You might like
《PHP编程最快明白》第七讲:php图片验证码与缩略图
2010/11/01 PHP
php中通过正则表达式下载内容中的远程图片的函数代码
2012/01/10 PHP
利用curl抓取远程页面内容的示例代码
2013/07/23 PHP
js indexOf()定义和用法
2012/10/21 Javascript
JavaScript String.replace函数参数实例说明
2013/06/06 Javascript
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
Bootstrap Table使用方法详解
2016/08/01 Javascript
NodeJs读取JSON文件格式化时的注意事项
2016/09/25 NodeJs
jQuery插件扩展操作入门示例
2017/01/16 Javascript
JS作用域链详解
2017/06/26 Javascript
webpack4.x打包过程详解
2018/07/18 Javascript
Javascript var变量删除原理及实现
2020/08/26 Javascript
[04:54]DOTA2 2017国际邀请赛:上届冠军WINGS采访短片
2017/08/09 DOTA
python中MySQLdb模块用法实例
2014/11/10 Python
关于python2 csv写入空白行的问题
2018/06/22 Python
python实现的MySQL增删改查操作实例小结
2018/12/19 Python
浅谈Python中的全局锁(GIL)问题
2019/01/11 Python
Python 通过打码平台实现验证码的实现
2019/05/13 Python
python aiohttp的使用详解
2019/06/20 Python
python3射线法判断点是否在多边形内
2019/06/28 Python
python小项目之五子棋游戏
2019/12/26 Python
详解python3类型注释annotations实用案例
2021/01/20 Python
详解HTML5中的manifest缓存使用
2015/09/09 HTML / CSS
瑞典领先的汽车零部件网上零售商:bildelaronline24.se
2017/01/12 全球购物
机电一体化专业应届本科生求职信
2013/09/27 职场文书
医药工作岗位求职信分享
2013/12/31 职场文书
写给爸爸的道歉信
2014/01/15 职场文书
高一物理教学反思
2014/01/24 职场文书
期中考试后的反思
2014/02/08 职场文书
财务会计专业自荐书
2014/06/30 职场文书
党委干部批评与自我批评发言稿
2014/09/28 职场文书
2015年社区工作总结
2015/04/08 职场文书
党支部培养考察意见
2015/06/02 职场文书
Ruby使用Mysql2连接操作MySQL
2022/04/19 Ruby
MySQL去除密码登录告警的方法
2022/04/20 MySQL
Mysql将字符串按照指定字符分割的正确方法
2022/05/30 MySQL