【发布时间】:2020-06-03 20:13:31
【问题描述】:
我对 jQuery 有一点问题。我只想在我的“li”上删除和添加类,但它对我说“不是函数”。这是我的代码:
$(document).ready(function (){
var title = $('title')
var nav = $('.nav-a')
for ($i = 0 ; $i<nav.length ; $i++)
{
if (title[0].text === nav[$i].text){
var newTitle = title[0].text
var newNav = nav[$i].text
var navI = nav[$i].parentElement
console.log(newTitle)
console.log(newNav)
console.log(navI)
nav.parent().removeClass('menu-active')
navI.addClass('menu-active')
}
}
})
在控制台我有:Uncaught TypeError: navI.addClass is not a function
【问题讨论】:
-
navI是 DOM 而不是 jQuery...您混合使用 jQuery 和 DOM 的某些原因。 -
文本匹配也很糟糕。您应该有某种匹配属性来将元素相互匹配。现在,当您决定更改一个元素的文本时,它会破坏您的代码。
标签: javascript jquery typeerror