手动实现jQuery的toggle()效果
有时候我们希望实现toggle()切换效果,但是切换的同时需要完成一些其他要做的事情。所以我们需要对jQuery的toggle()函数进行改造。
下面好test2()函数就是一个实现toggle效果的函数:
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title></title>
<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
function test1() {
$("#test").toggle();
} function test2() {
if($("#test").css('display') == 'none') {
//自己的处理
$("#test").show();
} else {
//自己的处理
$("#test").hide();
}
}
</script>
</head> <body>
<button type="button" onclick="test1()" value="">方式一</button>
<button type="button" onclick="test2()" value="">方式二</button>
<div id="test">
测试div
</div>
</body> </html>
也可以用原生的js实现:
var display = document.getElementById(‘id’).style.display; if(display=='none'){
document.getElementById(‘id’).style.display = '';
}else{
document.getElementById(‘id’).style.display = 'none';
}
效果可以实现div的隐藏与显示。
一个完整的隐藏菜单栏与改变页面内容区大小的JS
/**
* Qlq 2018.1.17缩进菜单(菜单的缩回去与显示效果)
*/
$(function() { // 菜单栏的缩放
$("#toggleMenu").click(function() {
toggleMenu();
}); });
// 图标的点击事件(缩进菜单)
function toggleMenu() {
// 将菜单显示出来
if ($(".el_left").css('display') == 'none') {
//1.先将右面缩回去。2.右边完成之后左边菜单显示
$(".el_right").animate({
width : "87%"
}, {
duration : 1000,
complete : function() {
$(".el_left").show(1000);
//更换图标的src属性
$("#toggleMenu").prop("src",contextPath+"/image/show.png");
}
});
} else {
// 将菜单隐藏掉
//1.先将菜单缩回去。2.左边完成之后右边界面占满全屏
$(".el_left").hide(1000, function() {
$(".el_right").animate({
width : "100%"
}, 1000);
//更换图标的src属性
$("#toggleMenu").prop("src",contextPath+"/image/hide.png");
}); }
}
另一个toggle效果,在隐藏与显示之后更换图标:(bootstrap框架)
/** *****************S QLQ 显示与隐藏查询条件******************** */
function toggleQueryDiv() {
// 点击显示查询条件与分割符
if ($("#queryDiv").css("display") == "none") {
$("#queryDiv").show(
"slow",
function() {
// 删除class属性(切换上下箭头)
$(".glyphicon-chevron-down").removeClass().addClass(
"glyphicon glyphicon-chevron-up").prop("title",
"点击隐藏查询条件");
});
} else {//隱藏条件与分割符
$("#queryDiv").hide(
"slow",
function() {
//删除class属性(切换上下箭头)
$(".glyphicon-chevron-up").removeClass().addClass(
"glyphicon glyphicon-chevron-down").prop("title",
"点击显示查询条件");
});
}
}
/*******************E QLQ 显示与隐藏查询条件*********************/
另一个toggle效果,在隐藏与显示之后更换提示内容:(layui框架)
/** *****************S 显示与隐藏培养方案基本信息******************** */
/**
* 显示与隐藏培养方案基本信息
* @param obj
*/
function toggleTrainSchemeBaseInfoDiv(obj) {
// 点击显示查询条件与分割符
if ($("#trainSchemeBaseInfo").css("display") == "none") {
$("#trainSchemeBaseInfo").show(
"slow",
function() {
$(obj).attr("title","点击隐藏培养方案基本信息");
});
} else {//隱藏条件与分割符
$("#trainSchemeBaseInfo").hide(
"slow",
function() {
$(obj).attr("title","点击显示培养方案基本信息");
});
}
}
/*******************E 显示与隐藏查询条件*********************/
手动实现jQuery的toggle()效果的更多相关文章
- jQuery之动画效果show()......animate()
jQuery之动画效果 1.show()显示效果 语法:show(speed,callback) Number/String,Function speend为动画执行时间,单位为毫秒.也可以为slow ...
- 关于jQuery中toggle()函数的使用
今天遇到一个有趣的例子,将它记录下来. 一个一级菜单,里边有一个二级菜单,二级菜单是通过锚点来链接页面元素的.想要实现的效果是当点击锚点时,页面链接到相应锚点,同时二级菜单隐藏,再点击一级菜单时,继续 ...
- JQuery hover toggle事件使用
JQuery hover toggle事件使用: <%@ page language="java" import="java.util.*" pageEn ...
- jQuery操作之效果
jQuery操作之效果 效果操作一共分五类:1.基本,2.滑动,3.淡入淡出,4.自定义,5.设置 show(),hide(),toggle() 代码如下: html代码: <p style=& ...
- jQuery Easing 动画效果扩展--使用Easing插件,让你的动画更具美感。
jQuery Easing 是一款比较老的jQuery插件,在很多网站都有应用,尤其是在一些页面滚动.幻灯片切换等场景应用比较多.它非常小巧,且有多种动画方案供选择,使用简单,而且免费. 引入Eas ...
- 第一百七十二节,jQuery,动画效果
jQuery,动画效果 学习要点: 1.显示.隐藏 2.滑动.卷动 3.淡入.淡出 4.自定义动画 5.列队动画方法 6.动画相关方法 7.动画全局属性 一.显示.隐藏 jQuery 中显示方法为:. ...
- jQuery 收缩展开效果
<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Conten ...
- js进阶 13-2 jquery动画滑动效果哪些注意事项
js进阶 13-2 jquery动画滑动效果哪些注意事项 一.总结 一句话总结:滑动里面这里up是隐藏,down是显示. 1.jquery动画默认的两个切换效果是什么(swing默认和linear的区 ...
- jquery-12 jquery常用动画效果有哪些
jquery-12 jquery常用动画效果有哪些 一.总结 一句话总结:jquery可以用户animate()自定义动画,也可以slide和fade系列方法来设置动画. 1.动画效果如何设置执行时间 ...
随机推荐
- Mybatis Learning Notes 1
Mybatis Learning Notes 主要的参考是博客园竹山一叶的Blog,这里记录的是自己补充的内容 实体类属性名和数据库不一致的处理 如果是实体类的结果和真正的数据库的column的名称不 ...
- shell 简单脚本 2
#!/bin/bash source /etc/profile APPLICATIONS_HOME="/cpic/cpicapp/cpic_analy/jars" APPLICAT ...
- "Mac OS X"录屏幕视频并转成gif
第一步: 使用软件QuickTime Player录屏幕视频,创建方式选择新建屏幕录制: 选择区域录制,录好保存后,就需要转gif,需要另外一个软件. 第二步: 使用GIFBrewery软件创建gif ...
- BestCoder Round#15 1002-Instruction
http://acm.hdu.edu.cn/showproblem.php?pid=5083 官方题解——> 1002 Instruction 先考虑编码,首先找到operation对应的编码, ...
- Bootstrap历练实例:垂直的按钮组
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- 字符串数组 输入3个字符串,要求按由小到大的字母顺序输出; 输入n个学生的姓名和学号到字符串数组中,在输入一个姓名,如果班级有该生则返回其信息,否则返回本班无此人
输入3个字符串,要求按由小到大的字母顺序输出 如 输入franch england china,输出结果是china england franch 三个数排序输出,比较三个数的大小怎么做? a=18 ...
- MYSQL中批量替换某个字段的部分数据
1.修改字段里的所有含有指定字符串的文字 UPDATE 表A SET 字段B = replace(字段B, 'aaa', 'bbb') example: update table set url= ...
- (7)zabbix资产清单inventory管理
概述 监控的设备越来越多,有时候搞不清楚哪台服务器是什么配置,大多公司有自己的资产清单,要去专门的系统查询显得多少有点麻烦.为此,zabbix专门设置了设备资产管理功能. 我们创建或编辑主机的时候,可 ...
- 使Linux支持exFAT和NTFS格式的磁盘
Linux支持exFAT和NTFS Linux系统默认可以自动识别到fat32格式的盘,但fat32支持的文件不能大于4G,所以只能将移动硬盘和U盘格式化为NTFS和exFAT这两种格式的,对于U盘最 ...
- yum安装php7.2
文章来源:https://www.cnblogs.com/hello-tl/p/9404655.html 分享一个算是比较完美的php7.2yum安装 0.更换yum原 # yum install e ...