原生JS 实现addClass、setText、getText

HTML部分

  




  
  JS Bin


  
  • 选项1
  • 选项2
  • 选项3
  • 选项4
  • 选项5

CSS部分

.blue{color: blue;}

JS 部分

  window.jQuery = function(nodeOrSelector) {
  let nodes = {};//初始化nodes
  if (typeof nodeOrSelector === 'string') {    //判断传过来的是不是字符串
    let temp = document.querySelectorAll(nodeOrSelector)//伪数组
    for (let i = 0; i < temp.length; i++) { //遍历temp
      nodes[i] = temp[i]//将temp的key赋给nodes
    }
    nodes.length = temp.length //将temp的length赋给nodes
  } else if (nodeOrSelector instanceof Node) {//传过来是Node的节点
    nodes = { //为nodes生成一个伪数组
      0: nodeOrSelector,
      length: 1
    }
  }
  nodes.setText = function(text){
    for(let i=0;i {
      for (let i = 0; i li')
node2.addClass(['blue']);
node2.setText('hi');

你可能感兴趣的:(原生JS 实现addClass、setText、getText)