专栏首页天天框架设计续集(六)

框架设计续集(六)

1.分析现状
<!--在组合选择器中-->
eg:
   getElem (“.con,.c”,context,results)
   
<!--假如-->
eg:
   getElem (“.con .box,.c h4”,context,results)
<!--那么以前的getElem方法就不能实现,所以在下面对次进行实现-->
2.思路分析及实现
/*基本选择器的实现 E */


/*组合选择器的实现 B */
/*怎么实现组合选择器eg:(".con",".box")
为了实现代码的服用,重新定义一个函数*/

/*对于后代选择器的实现*/
/*eg:select(".c .c1 .c2",context,results)
* 实现的思路就是将选择器字符串分割,然后循环调用getElem方法
*
* */


function select (selector,context,results){
    results = results || [];
    var newselector = selector.split(",");
    //因为传进来的选择器字符串两端可能有空格,为了防止出错,将其两端的空格去掉
   each(newselector,function(i,v){
       var list = v.split(" "),
           c= context;
       each(list,function(m,n){
           if(n){//防止字符串截取后,数组里有空字符串eg:".con   .box"
               /*遍历调用getElem函数,只是每次的上下文不一样,最后返回的结果就是我们需要的*/
               c = getElem(n,c)
           }
       });
       results.push.apply(results,c)
   });
    return results
}

/*组合选择器的实现 E*/

eg:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 框架设计续集(五)

    天天_哥
  • jQuery事件(20171031)

    天天_哥
  • Airbnb JavaScript Style Guide

    const foo = 1; let bar = foo; bar = 9; console.log(foo, bar); // => 1, 9

    天天_哥
  • 脉冲压缩处理

    脉冲压缩指雷达在发射时采用宽脉冲信号,接收和处理回波后输出窄脉冲。脉冲压缩技术是匹配滤波理论和相关接收理论的一个很好的实际应用。很好地解决了这样的一个问题:在发...

    数字芯片社区
  • 点论 | 组合逻辑环 Combinational loop 知多少

    在数字集成电路中有许多许多的专有名词,特别难用一个汉语词或一段汉语句子清晰表述,有时候直接引用英文并不是为了装逼也不是偷懒,只是为了不曲解。对Combinati...

    老秃胖驴
  • ROS2Go与Ubuntu+ROS+Gazebo等版本对应关系

    目前,系统驱动和仿真软件Gazebo11,已经测试完成,等待ROS1.0和ROS2.0新版发布即可开启预装和测试。

    zhangrelay
  • 智能机器的现实风险

    当人们问我是干什么的,我常常对回答的深度感到困惑。说“人工智能”我很满意,但太宽泛,而说“图像处理”可能又太具体。然而,一听到接下的来的毫不相干的问题我总是气不...

    用户1908973
  • C++核心准则ES.86:避免在基本for循环的循环体中修改循环控制变量​

    ES.86: Avoid modifying loop control variables inside the body of raw for-loops

    面向对象思考
  • 在Mac上搭建React Native开发环境

    概述 前面我们介绍过在window环境下开发React Native项目,今天说说怎么在mac上搭建一个RN的开发环境。 配置mac开发环境 基本环境安装 1....

    xiangzhihong
  • Adobe OpenSource Flex 4每晚构建(Nightly Builds)版本可以下载了 博客分类: RIA OpenSour

    Adobe OpenSource Flex 4(Gumbo)可以开始尝尝鲜了:

    阿敏总司令

扫码关注云+社区

领取腾讯云代金券