文章目录
toggle()方法主要有两个功能,一是用于绑定两个或多个事件处理器函数,在元素被点击时轮流执行;二是切换元素的显隐状态,如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。在jQuery 1.9中,toggle()方法的第一种使用方式被弃用。删除该机制是为了减少混淆,提高库的模块化。
实现隐藏与显示相互切换的效果
- 实现隐藏与显示相互切换的效果
- 可以恢复函数 toggle 轮流执行事件监听器的功能
实现隐藏与显示相互切换的效果
.xs {
display: none;
}
$(function () {
var flag = 1;
$("#a1").click(function (e) {
if (flag == 1) {
// 显示div
$("#d1").removeClass("xs");
flag = 0;
} else {
// 隐藏
$("#d1").addClass("xs");
flag = 1;
}
});
});
测试
hello
或者
var num = 0;
$('#a1').click(function (e) {
if (num++ % 2 == 0) {
// 显示
$("#d1").removeClass("xs");
} else {
// 隐藏
$("#d1").addClass("xs");
}
e.preventDefault(); //阻止元素的默认动作(如果存在)
});
或者
var i=true;//表示开关
$(".one .top").click(function() {
if(i){
$(".content").hide("slow");
i=false;
}else {
$(".content").show(1500);
i=true;
}
});
可以恢复函数 toggle 轮流执行事件监听器的功能
引入jQuery迁移插件
在浏览器中运行,可以正常的轮流执行事件监听函数,不过在控制台出会多出一条警示:
JQMIGRATE: jQuery.fn.toggle(handler, handler...) is deprecated