Javascript 不知道为什么这不起作用 保持更新 函数toggleClass(){ 如果(类名==“按钮1”){ className=“info”; }否则{ className=“按钮1”; }
试图在单击div时更改div的类。div的作用类似于一个按钮,应该由另一个div类替换。这是我目前为止的编码,请提供帮助。提前感谢。您的代码有几个问题。首先,您在if/else语句中缺少一个右括号Javascript 不知道为什么这不起作用 保持更新 函数toggleClass(){ 如果(类名==“按钮1”){ className=“info”; }否则{ className=“按钮1”; },javascript,html,css,Javascript,Html,Css,试图在单击div时更改div的类。div的作用类似于一个按钮,应该由另一个div类替换。这是我目前为止的编码,请提供帮助。提前感谢。您的代码有几个问题。首先,您在if/else语句中缺少一个右括号。检查控制台F12以查看错误: 未捕获的语法错误:输入意外结束 其次,正如上面注释中所指出的,className不会自动存在,也不会更改元素的类className是DOM对象的属性。您需要获取单击的元素并引用className属性来检索并正确设置它 但是,在执行此操作之前,需要获取单击的元素。为此,将事
。检查控制台F12以查看错误:
未捕获的语法错误:输入意外结束
其次,正如上面注释中所指出的,className
不会自动存在,也不会更改元素的类className
是DOM对象的属性。您需要获取单击的元素并引用className
属性来检索并正确设置它
但是,在执行此操作之前,需要获取单击的元素。为此,将事件
参数添加到内联单击处理程序:
<div class="button button1" onclick="toggleClass();">Stay Updated</div>
<script>
function toggleClass(){
if(className == "button button1"){
className = "info";
} else {
className = "button button 1";
}
</script>
并在函数中引用事件对象toggleClass
:
onclick="toggleClass(event);"
使用事件
对象的目标
属性查找单击的元素并将其保存到变量中:
function toggleClass(evt) {
最后,引用btn.className
代替函数中的所有className
引用
演示:
功能切换类(evt){
var btn=evt.target;
如果(btn.className==“按钮1”){
btn.className=“info”;
}否则{
btn.className=“按钮1”;
}
}
div{
颜色:#fff;
}
div.button.button1{
背景:蓝色;
}
部门信息{
背景:绿色;
}
Stay Updated
分配名为className
的变量不会自动更改div标记的类。做一点调查,你会发现的。你可能想看看这个。该类名存在于DOM中。您不能将其更改为代码的本地版本。
var btn = evt.target;