JavaScript添加和删除不起作用的类
我正在尝试创建一个子菜单,该子菜单仅在您单击主菜单中的项目时显示。我已经做了一段代码,但似乎不起作用,只是没有变化。我花了很长时间试图让它也工作,但不能,如果有人能帮助我,我将非常感激。我试图避免使用jquery,希望它能够一次打开一个子菜单 这是我的js代码:JavaScript添加和删除不起作用的类,javascript,html,css,Javascript,Html,Css,我正在尝试创建一个子菜单,该子菜单仅在您单击主菜单中的项目时显示。我已经做了一段代码,但似乎不起作用,只是没有变化。我花了很长时间试图让它也工作,但不能,如果有人能帮助我,我将非常感激。我试图避免使用jquery,希望它能够一次打开一个子菜单 这是我的js代码: function hasClass(element, cls) { return (' ' + element.className + ' ').indexOf(' ' + cls + ' ') > -1; } func
function hasClass(element, cls) {
return (' ' + element.className + ' ').indexOf(' ' + cls + ' ') > -1;
}
function menuSlider(subMenu) {
var el = document.getElementById(subMenu);
/* Reset all submenu classes */
document.getElementById("dashboardSubMenu").className = "subMenu dashboardSubMenu";
document.getElementById("pagesSubMenu").className = "subMenu pagesSubMenu";
document.getElementById("mediaSubMenu").className = "subMenu mediaSubMenu";
document.getElementById("styleSubMenu").className = "subMenu stylesSubMenu";
document.getElementById("settingsSubMenu").className = "subMenu settingsSubMenu";
if (hasClass(el, 'selected') === false) {
/* Open submenu */
document.getElementById(subMenu).className = el.className + ' selected';
}
}
我有一个JSFIDLE代码第一个问题是在JSFIDLE中,您的代码位于页面的onload事件上,并且由于您使用的是
onclick
方法,因此您的函数必须是全局函数。因此,从放置代码的下拉列表中进行更改
那么您在其中一个id
s中有一个错误的名称
document.getElementById("styleSubMenu").className
应该是
document.getElementById("stylesSubMenu").className
(在样式中缺少s
)
这会导致语法错误,并且检查类的代码从未到达
在的演示中,第一个问题是在JSFIDLE中,您的代码位于页面的onload事件上,并且由于您使用了onclick
方法,因此您的函数必须是全局函数。因此,从放置代码的下拉列表中进行更改
那么您在其中一个id
s中有一个错误的名称
document.getElementById("styleSubMenu").className
应该是
document.getElementById("stylesSubMenu").className
(在样式中缺少s
)
这会导致语法错误,并且检查类的代码从未到达
在的演示中,第一个问题是在JSFIDLE中,您的代码位于页面的onload事件上,并且由于您使用了onclick
方法,因此您的函数必须是全局函数。因此,从放置代码的下拉列表中进行更改
那么您在其中一个id
s中有一个错误的名称
document.getElementById("styleSubMenu").className
应该是
document.getElementById("stylesSubMenu").className
(在样式中缺少s
)
这会导致语法错误,并且检查类的代码从未到达
在的演示中,第一个问题是在JSFIDLE中,您的代码位于页面的onload事件上,并且由于您使用了onclick
方法,因此您的函数必须是全局函数。因此,从放置代码的下拉列表中进行更改
那么您在其中一个id
s中有一个错误的名称
document.getElementById("styleSubMenu").className
应该是
document.getElementById("stylesSubMenu").className
(在样式中缺少s
)
这会导致语法错误,并且检查类的代码从未到达
演示在排序现在添加了我的js代码。由于缺少图像链接,您的小提琴已完全损坏。我认为您正在重新发明轮子。。。似乎有效。注意,getElementById(“样式子菜单”)
!=getElementById(“stylesSubMenu”)
问题在于@j08691所说的,修复打字错误,它就会工作。现在添加了我的js代码。由于缺少图像链接,你的小提琴完全坏了。我想你是在重新发明轮子。。。似乎有效。注意,getElementById(“样式子菜单”)
!=getElementById(“stylesSubMenu”)
问题在于@j08691所说的,修复打字错误,它就会工作。现在添加了我的js代码。由于缺少图像链接,你的小提琴完全坏了。我想你是在重新发明轮子。。。似乎有效。注意,getElementById(“样式子菜单”)
!=getElementById(“stylesSubMenu”)
问题在于@j08691所说的,修复打字错误,它就会工作。现在添加了我的js代码。由于缺少图像链接,你的小提琴完全坏了。我想你是在重新发明轮子。。。似乎有效。注意,getElementById(“样式子菜单”)
!=getElementById(“stylesSubMenu”)
问题在于@j08691所说的,修复错误,它就会工作。