为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
jQuery基础(二)—DOM篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery基础(二)—DOM篇

Aaron艾伦 Web前端工程师
难度入门
时长 2小时17分
  • before、after与insertBefore。insertAfter的除了目标与位置的不同外,后面的不支持多参数处理 $("#bt1").on('click', function() { //在test1元素前后插入集合中每个匹配的元素 //不支持多参数 $('<p >测试insertBefore方法增加</p>').insertBefore($(".test1")) }) $("#bt2").on('click', function() { //在test2元素前后插入集合中每个匹配的元素 //不支持多参数 $('<p >测试insertAfter方法增加</p>', '<p >多参数</p>').insertAfter($(".test2")) })
    查看全部
  • $("#bt1").on('click', function() { //在匹配test1元素集合中的每个元素前面插入p元素 $(".test1").before('<p >before,在匹配元素之前增加</p>', '<p >多参数</p>') }) $("#bt2").on('click', function() { //在匹配test1元素集合中的每个元素后面插入p元素 $(".test2").after('<p >after,在匹配元素之后增加</p>', '<p >多参数</p>') })
    查看全部
  • $(".content").append('<div class="append">通过append方法添加的元素</div>') $('<div class="appendTo">通过appendTo方法添加的元素</div>').appendTo($(".content"))
    查看全部
  • detach(), remove()共同点: 1.移除被选元素,包括所有文本和子节点。 2.会保留 jQuery 对象中的匹配的元素,因而可以在将来再使用这些匹配的元素。 不同点: 1.detach()不会删除对象绑定的事件,附加的数据 2.remove(0会删除对象绑定的事件附件的数据 使用方法: 如果要删除对象上的事件用remove, 不删除用detach()
    查看全部
  • 去重这句有必要吗?if (!$("p").length) return; bt1的点击事件中,【p】存储了所有p标签的内存模型对象;将【if (!$("p").length) return; 】这句去掉后,如果连续点击两次,在第一次点击的时候,【p】是可以取到页面中p元素的模型对象;在第二次点击时,由于页面中所有的p标签都已经被删除,【p】的被赋值为空。此时,再点击bt2,就不能将p元素重新添加到页面,因为【p】中没有存储p元素的内存模型对象。 另外,先执行一次p元素的换位,再提交一次后。先点击bt2会导致在按钮的上下均出现两个p元素。这是因为上一次执行后,【p】已经存储了p元素的内存模型对象,还没被清除,可在bt2的事件中加一句类似bt1的去重语句【if ($("p").length) return;】。 检测p是不是存在,如果不存在,就结束,即return,若p存在,再执行下一行的代码。 if语句接收一个布尔值,如果布尔值为true则执行接下来的语句,布尔值为false则执行else关键词后的语句。 JavaScript语言有个特点”隐式转换”:在需要布尔值会将其他类型自动往布尔值转换$("p").length本来返回的是number类型的0,但被自动转化为布尔值false了。前面也说了,如果IF语句接收到布尔值false就会执行else关键词后的语句,这里没有写else后的语句。所老师把在前面加了个!,这个东西时一个叫“逻辑非”的操作符,作用就是将布尔值取反,true变成false,false变成true。 所以if (!$("p").length) return;可以翻译成 if(p的长度为零的话~)就直接返回。不执行下一条的detach命令
    查看全部
  • querySelector 选取元素中第一个
    查看全部
  • .empty()删除子元素和后代元素 .remove()删除包括自身元素及后代,移除绑定事件和jQuery数据 $("#test").empty()改为$("#test").html("");这样写有区别吗 是没有区别的,网页中F12调试可以比较发现,两种方法都是删除了test内部的所有html代码
    查看全部
  • 前端开发者一定要注意,绑了多少事件,不用的时候一定要记得销毁
    查看全部
  • <script type="text/javascript"> $("#bt1").on('click', function() { //找到class="aaron1"的div节点 //然后通过prepend在内部的首位置添加一个新的p节点 $('.aaron1') .prepend('<p>prepend增加的p元素</p>') }) </script> <script type="text/javascript"> $("#bt2").on('click', function() { //找到class="aaron2"的div节点 //然后通过prependTo内部的首位置添加一个新的p节点 $('<p>prependTo增加的p元素</p>') .prependTo($('.aaron2')) }) </script>
    查看全部
  • 2个方法都是都可以接收HTML字符串,DOM 元素,元素数组,或者jQuery对象,用来插入到集合中每个匹配元素的前面或者后面 2个方法都支持多个参数传递after(div1,div2,....) 可以参考右边案例代码
    查看全部
  • querySelector() 方法仅仅返回匹配指定选择器的第一个元素。如果你需要返回所有的元素,使用 querySelectorAll() 方法替代。 addEventListener() 方法用于向指定元素添加事件句柄。 提示: 使用 removeEventListener() 方法来移除 addEventListener() 方法添加的事件句柄。
    查看全部
  • false在其中有什么重要意义吗 document.addEventListener('click',function(){},false)。后面加false是阻止捕获,当div层数多了会影响其他事件,会有问题,一般默认是false在这的意义显现不出来 <div onclick=a> <p onclick=b></p> <div> 假如你点击p,如果是false,为冒泡机制,是先触发b事件后触发a事件,如果是true,为捕获机制,是先触发a事件后触发b事件。
    查看全部
  • if (index % 2) { $(this).css('color','blue') } 这是给偶数加的哦。index 算出来的值,为1 3 5.而li的下标是从0开始算了,所以在dom结构上是给偶数的li加了颜色。 $('li:even').css('color','blue') :even属于css选择器,是从一开始数的。 所以两个并不一样哦。
    查看全部
  • $('<a >替换第二段的内容</a>').replaceAll('p:eq(1)'); •.replaceAll()和.replaceWith()功能类似,主要是目标和源的位置区别 •.replaceWith()与.replaceAll() 方法会删除与节点相关联的所有数据和事件处理程序
    查看全部
  • closest()和parents()的差异: closest开始于当前元素,即可以遍历到元素自身;而parents起始于父元素。 closest查询到目标元素即刻停止,而parents会一直查找到根元素。 closest包含一个或零个jquery对象,parents可包含0、1或多个元素
    查看全部

举报

0/150
提交
取消
课程须知
1、有HTML/CSS基础 2、有JavaScript基础
老师告诉你能学到什么?
1、jQuery的语法 2、jQuery节点操作
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!