麻烦老师讲解一下1-5选择题的每一个答案

麻烦老师讲解一下1-5选择题的每一个答案

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

$('li:eq(0)') 是通过选择器的方式来获取jQuery对象,

$('li').eq(0) 是通过eq方法提取出对应索引的jQuery对象。

两种方式获取到的返回值也不一样,虽然都是jQuery对象,但是包含不同的属性,比如$('li:eq(0)')包含一个selector属性,存储着选择器的值"li:eq(0)"。

而且由于两个对象并不指向同一个对象,所以即使属性一模一样,也不完全相等,这个在之前的javascript基础课程中我们学到过。

$('li:eq(0)')[0]、$('li')[0]、$('li').eq(0)[0]获取到的都是第一个li,且都是DOM对象,所以是true;

$('li').eq(0)[0].innerHTML)和($('li').first()[0] )获取到的都是第一个li,且都是DOM对象,所以是true;

你将每个选择器打印出来,看下它们的对象以及包含的属性,就很清楚了。

祝学习愉快!


  • Durians #1
    老师,这里的不指向同一个对象是不是$('li:eq(0)')返回的是一个只有一个li的Jquery的集合,而$('li').eq(0)返回的是第一个li?
    2018-01-01 14:04:47
正在想名字呢 2018-01-01 18:42:28

你可以这么理解

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师