補全下面程式碼:
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類