美文网首页
自己写一个jq

自己写一个jq

作者: U17 | 来源:发表于2018-09-03 14:45 被阅读0次

封装一个函数:

传入value 返回一个你想得到的值或者对象

封装好的函数就是一个API

第二部: 声明一个类似Node的对象 把函数当做属性放入到这个对象中

然后通过 ffdom.getSiblings() ffdom.addClass() 调用函数

那这些函数放到一个对象里 然后通过想调用属性的方式来调用这些函数给这个对象取个名字 就叫做命名空间

在这个方法中 你需要先声明 两个全局对象(函数) 这就很容易导致你一不小心就把别人声明的对象覆盖了

这时需要下面变形 先声明一个全局对象 然后通过 obj.xxx的方式 写入属性再让这个属性 等于一个函数( function(){})这样 这两个函数就只是你声明的全局对象里面的两个属性

同样的 我们能不能把这些方法加入到Node原型链中呢 看下面这种变形

给Node的公有属性添加一个方法 任何node都可以通过这个方法访问这个函数

那么问题来了 我们怎么让函数 获取到我们这个节点呢 用this

item.getSiblings() 等价于item.getSiblings.call(item)这里的this 就是绑定这个方法的节点对象

这样又出现了一个老问题了 万一你把 Node里的函数覆盖了呢 我们可以通过下面方法解决

创造一个node2 然后调用Node

实现 getSiblings

上面的代码 我们只能操作一个节点 如果我要要操作多个节点呢看下面代码

思路 :判断传入的节点 到底是一个还是多个 不管是什么样的 我们都把传入的节点 放入已经声明好的空对象中 如果是多个节点那么 他本身就是个伪数组 但是为了确保数组的纯净性我们需要遍历节点数组把每一项拿出来放入我们的数组中然后我们再写一个函数 同样放入到数组中

相关文章

  • 自己写一个jq

    封装一个函数:传入value 返回一个你想得到的值或者对象 第二部:声明一个类似Node的对象 把函数当做属性放入...

  • 仿写JQ方法

    原生js仿写jq 仿写jq的click方法 仿写jq的on事件 仿写jq的eq方法 仿写jq的 css方法 仿写j...

  • 滚动加载的瀑布流效果

    需要jq的支持哦 也可以自己写原生js

  • 如何在html中导入外部的jq文件(js文件)

    主要问题就是 在html中先导入相应的 jq包 相应的 jq文件 然后再导入自己 写的js--jq文件就不会出错了

  • 文字滚动

    jq写的 swiper

  • 仿写JQ

    关键词 加载完成之后执行"DOMContentLoaded" window.addEventListener("D...

  • JS-jQuery

    JQ是JS写的插件库,说白了,就是一个js文件,凡是用jq能实现的,js都能实现,js能实现的,jq却不一定能实现...

  • 第一课

    什么是JQ? 一个优秀的JS库 写越少的代码,做越多的事情 JQ的好处? 简化JS的复杂操作 不再需要关心兼容性 ...

  • jQuery 初体验

    什么是JQ? 一个优秀的JS库 写越少的代码,做越多的事情 JQ的好处? 简化JS的复杂操作 不再需要关心兼容性 ...

  • >>>>> JQ-第一节

    什么是JQ? 一个优秀的JS库 写越少的代码,做越多的事情 JQ的好处? 简化JS的复杂操作 不再需要关心兼容性 ...

网友评论

      本文标题:自己写一个jq

      本文链接:https://www.haomeiwen.com/subject/wjgbwftx.html