補全一段jQuery代碼

補全下面代碼:node

window.jQuery = ???
    window.$ = jQuery
    
    var $div = $('div')
    $div.addClass('red') // 可將全部 div 的 class 添加一個 red
    $div.setText('hi') // 可將全部 div 的 textContent 變爲 hi

補全後:數組

window.jQuery = function (nodeOrSelector) {
      let nodes = {}

      let temp = document.querySelectorAll(nodeOrSelector) //僞數組
      for (let i = 0; i < temp.length; i++) {
        nodes[i] = temp[i]
      }
      nodes.length = temp.length

      // 設置全部 div 的 textContent 
      nodes.setText = function (text) {
        for (let i = 0; i < nodes.length; i++) {
          nodes[i].textContent = text
        }
      }
      // 爲全部 div 添加 class
      nodes.addClass = function (className) {
        for (let i = 0; i < nodes.length; i++) {
          nodes[i].classList.add(className)
        }
      }

      return nodes
    }
    window.$ = jQuery
    var $div = $('div')
    $div.addClass('red') // 可將全部 div 的 class 添加一個 red
    $div.setText('hi') // 可將全部 div 的 textContent 變爲 hi

主要思路是,window.$ = jQuery因此window.jQuery要等於一個函數,這個函數接收一個參數,返回一個對象,返回的對象包含兩個方法,這兩個方法能夠添加text文本和添加class類函數

相關文章
相關標籤/搜索