JavaScript中的多个if's可以做多种事情
Multiple if's in JavaScript to do multiple things
本文关键字:if JavaScript 更新时间:2023-09-26
我有一个div,包含3个不同的div。
我需要帮助来实现一个智能切换功能。
因此,当父div被单击时,它将检查哪个div是可见的,并对每个div有一个特定的操作。
所以如果Div1是可见的,做X如果Div2可见,则执行Y如果div3可见,则执行Z
$(".button").click(function() {
if ($('.div1', this).is(':visible')) {
$(".div1", this).hide();
$(".div2", this).show();
}
if ($('.div2', this).is(':visible')) {
$(".div2", this).hide();
$(".div3", this).show();
$(".divtemp", this).show();
}
if ($('.div3', this).is(':visible')) {
$(".div3", this).hide();
$(".div1", this).show();
$(".divtemp", this).hide();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<div class="button">
<div class="div1"></div>
<div class="div2"></div>
<div class="div3"></div>
<div class="divtemp"></div>
</div>
问题是,当这段代码运行时,它正确地运行了整个代码,因为每个"if"都满足了下一个"if"。
这可能是基本的编程,但如果有人能帮助它将非常感激!
- S
- 你可以缓存DOM元素,而不是一次又一次地潜入DOM
- 使用
else if
作为排他性条件 - 当你想在多个元素上执行相同的功能时,使用多个选择器
见代码内嵌注释
$(".button").click(function() {
var self = this, // Cache
div1 = $('.div1', self), // Cache
div2 = $('.div2', self), // Cache
div3 = $('.div3', self), // Cache
divtemp = $('.divtemp', self); // Cache
if (div1.is(':visible')) {
div1.hide();
div2.show();
} else if (div2.is(':visible')) { // Use else if
div2.hide();
div3.show();
divtemp.show();
} else if (div3.is(':visible')) { // Use else if
div1.show();
div3.hide();
divtemp.hide()
}
});
好吧,如果我明白你想要什么,你可能只需要添加"else"子句。最重要的是,你必须处理click事件,而你做错了。
$(".button").on('click', function(e){
e.preventDefault(); //this way you prevent the default click actions;
if($(".div1").is(":visible")){
//Do stuff
}else if $(".div2").is(":visible"){
//Do other stuff
}else if(){}
...
})
相关文章:
- 在PHP中使用javascript更改页面标题'if'
- gulp-if-javascript文件,但不在gulp-useref的特定目录中
- 带有多个elseif的Javascript if语句
- Javascript:If-then语句在函数中不起作用
- for循环中的javascript if语句找不到==
- Javascript Return and if/else
- Javascript nested if
- 在if语句下的html中使用javascript变量
- JavaScript if-else 速记错误
- 避免在if condition-Javascript中使用函数
- 在javascript中创建数组,而不是if.else
- 在Javascript中将一个值和字符串数组转换为if语句
- Javascript If else 只返回 TRUE 或只返回 FALSE
- 如何重写Javascript If语句以选择Classes而不是ID's的HTML格式
- 在Javascript中为if/else语句添加OR
- 重定向至If-Javascript诊断树
- if-else-if JavaScript 返回 true 并退出,无论输入如何
- 在 IF Javascript 中赋值变量
- 写一个if.JavaScript中的else语句和switch语句
- “if"javascript中的多个条件