老师这个filter()函数的this,有点看不懂?

老师这个filter()函数的this,有点看不懂?

<ul>  <li><strong>list</strong> item 1 - one strong tag</li>  <li><strong>list</strong> item <strong>2</strong> -    two <span>strong tags</span></li>  <li>list item 3</li>  <li>list item 4</li>  <li>list item 5</li>  <li>list item 6</li></ul>

$( "li" )  .filter(function( index ) {    return $( "strong", this ).length === 1;  })    .css( "background-color", "red" );



//this 也是选择器吗,也选中了每一个元素吗?

正在回答

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

1回答

同学,你好。

this表示的是当前的对象,也就是要选的每一个li。教你一个方法,在不知道那个东西是什么意思的时候,你就输出一下它看看:

http://img1.sycdn.imooc.com//climg/5cf0d57b00014c9906800221.jpg

$("strong", this).length === 1; 这句的意思是选择this对象中,标签名叫strong的元素,判断选择到的strong有几个,也就是.length,如果是1个的话,就返回这个符合条件的li数组。

如果帮助到了你,欢迎采纳!

祝学习愉快!

  • ude 提问者 #1
    老师那选择多个元素也是用这种语法啊 Multiple Selector (“selector1, selector2, selectorN”) 怎么区分呢? 我以为是选择两个对象的意思呢
    2019-05-31 16:47:22
  • Miss路 回复 提问者 ude #2
    当是选择器的时候,值一定是字符串,this是对象,可以区分出来。再不行,上面不是教你方法了吗?输出一下它,就知道它是什么鬼了。有的时候不能靠我们背,那么多的规则和对比,哪能都记住,即便现在记住了,一段时间没有用它就又忘了,所以最快解惑的方式,就是输出它,没有什么是一句console知道不了的东西。
    2019-05-31 16:59:51
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

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

在线咨询

领取优惠

免费试听

领取大纲

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