toggle()方法可用于切换被选元素的hide()与show()方法,进而控制元素的显示和隐藏,语法“$(selector).toggle(speed,callback)”;也可用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的click事件,语法“$(selector).toggle(function1(),function2(),functionN(),…)”。
本教程操作环境:windows7系统、jquery3.6版本、Dell G3电脑。
在jquery中,toggle()方法有几种作用:
-
控制元素的显示和隐藏
-
绑定两个或多个点击事件处理器函数
toggle()方法可用于切换被选元素的 hide() 与 show() 方法
该方法检查被选元素的可见状态。如果一个元素是隐藏的,则运行 show(),如果一个元素是可见的,则运行 hide() – 这会造成一种切换的效果。
$(selector).toggle(speed,callback)
登录后复制
参数 | 描述 |
---|---|
speed |
可选。规定 hide/show 效果的速度。默认是 "0"。 可能的值:
|
callback |
可选。当 toggle() 方法完成时执行的函数。 |
注释:隐藏的元素不会被完全显示(不再影响页面的布局)。
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script src="js/jquery-3.6.3.min.js"></script> <script> $(document).ready(function() { $("button").click(function() { $("p").toggle(); }); }); </script> </head> <body> <p>这是一个段落。</p> <button>切换 hide() 和 show()</button> </body> </html>
登录后复制
toggle()方法也可用于自定义函数之间的切换
toggle() 方法可用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。
当指定元素被点击时,在两个或多个函数之间轮流切换。
如果规定了两个以上的函数,则 toggle() 方法将切换所有函数。例如,如果存在三个函数,则第一次点击将调用第一个函数,第二次点击调用第二个函数,第三次点击调用第三个函数。第四次点击再次调用第一个函数,以此类推。
语法:
$(selector).toggle(function1(),function2(),functionN(),...)
登录后复制
参数 | 描述 |
---|---|
function1() | 必需。规定当元素在每偶数次被点击时要运行的函数。 |
function2() | 必需。规定当元素在每奇数次被点击时要运行的函数。 |
functionN(),… | 可选。规定需要切换的其他函数。 |
示例:
<html> <head> <script type="text/javascript" src="/jquery/jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").toggle(function(){ $("body").css("background-color","green");}, function(){ $("body").css("background-color","red");}, function(){ $("body").css("background-color","yellow");}, function(){ $("body").css("background-color","pink");} ); }); </script> </head> <body> <button>请点击这里,来切换不同的背景颜色</button> </body> </html>
登录后复制
【推荐学习:jQuery视频教程、web前端视频】