<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
</head>
<body>
<div>
<span class="color">深咖色</span>
<div class="cc"></div>
</div>
<div>
<span class="size">11*11</span>
<div class="bb"></div>
</div>
</body>
</html>
 .color,.size{  font-size:14px; color:black;}
.cc{ width:300px;height:100px;background:red;}
.bb{ width:300px;height:100px;background:red;}

第一种是简单的显示和隐藏,使用了bind()和toggle();

 $(function(){
$(".color").bind("click",function(){ $(this).next(".cc").toggle();});
$(".size").bind("click",function(){ $(this).next(".bb").toggle();});
});

toggle()方法自己就有显示隐藏的作用。

但是这段js的缺点是,当我点击“深咖色”显示红色方块,再次点击“11*11”时,绿色方块出现,但是红色方块也不会隐藏,如图:

第二种方法:改进上述的缺点,当再次点击时,隐藏其他,只出现点击出现的相应内容。

$(function(){
  $(".color").bind("click",function(){
$(this).next(".cc").show();
$(".bb").hide();
});
$(".size").bind("click",function(){
$(this).next(".bb").show();
$(".cc").hide();
});
});

第三种,在第二种的基础上添加,当点击显示时,出现相应内容,点击其他消失,或者点击其他空白处消失。

  $(function(){

    $(".color").bind("click",function(){
$(this).next(".cc").show();
$(".bb").hide();
});
$(".size").bind("click",function(){
$(this).next(".bb").show();
$(".cc").hide();
}); $(".color").on("click", function(e){
$(document).one("click", function(){
$(".cc").hide();
$(".bb").hide();
}); e.stopPropagation();
});
$(".cc").on("click", function(e){
e.stopPropagation();
}); $(".size").on("click", function(e){
$(document).one("click", function(){
$(".bb").hide();
$(".cc").hide();
}); e.stopPropagation();
});
$(".bb").on("click", function(e){
e.stopPropagation();
});
});

one() 方法为被选元素附加一个或多个事件处理程序,并规定当事件发生时运行的函数。

当使用 one() 方法时,每个元素只能运行一次事件处理器函数。

jQuery 点击显示再次点击隐藏的更多相关文章

  1. vue实现两重列表集合,点击显示,点击隐藏的折叠效果,(默认显示集合最新一条数据,点击展开,显示集合所有数据)

    效果图: 默认显示最新一条数据: 点击显示所有数据: 代码: 说明:这里主要是 这块用来控制显示或者隐藏 根据当前点击的  这个方法里传递的index 对应  isShow 数组里的index  ,对 ...

  2. JQuery 浮动DIV显示提示信息并自动隐藏

    /** * 浮动DIV定时显示提示信息,如操作成功, 失败等 * @param string tips (提示的内容) * @param int height 显示的信息距离浏览器顶部的高度 * @p ...

  3. js或jquery实现点击某个按钮或元素显示div,点击页面其他任何地方隐藏div

    点击某个元素显示div,点击页面其他任何地方隐藏div,可用javascript和jquery两种方法实现: 一:javascript实现方法技巧<script>//定义stopPropa ...

  4. 锋利的Jquery(点击显示隐藏div)

    点击显示隐藏div <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

  5. 使用jQuery 中的显示与隐藏动画效果实现折叠下拉菜单的收缩和展开,在页面的列表中有若干项,列表的每项中有一个二级列表,二级列表默认为隐藏状态。点击列表的项,切换二级列表的显示或隐藏状态

    查看本章节 查看作业目录 需求说明: 使用jQuery 中的显示与隐藏动画效果实现折叠下拉菜单的收缩和展开,在页面的列表中有若干项,列表的每项中有一个二级列表,二级列表默认为隐藏状态.点击列表的项,切 ...

  6. jQuery点击按钮实现div的隐藏和显示切换效果

    <script type="text/javascript"> $(function(){ $('#click_event').click(function(){  i ...

  7. js点击显示隐藏

    这个栗子…… 可以不吃,先预设一个变量表示div的状态,例子中0是显示的,一开始是隐藏的.当点击时判断状态是显示0的还是隐藏1的:如果是显示的就把div隐藏,再把变量改变为1.再次点击时把会判断到变量 ...

  8. JS原生隐藏显示图片,点击切换图片的效果

    今天要说的内容,看标题就都能知道了!所有知识点一览无遗啊!咱们今天的东西,是纯纯的原生JS代码, 我先说一下要求, 1.有两个按钮,内容为显示,和换, 2.当点击显示的时候,按钮文字变成隐藏,同时图片 ...

  9. js如何实现点击显示和隐藏表格

    js如何实现点击显示和隐藏表格 一.总结 一句话总结: 1.给table或者table里面的元素添加点击事件, 2.然后判断当前表格的数据显示或者隐藏, 3.然后通过display属性显示(非none ...

随机推荐

  1. Logstash学习-plugin安装

    Usage: bin/logstash-plugin [OPTIONS] SUBCOMMAND [ARG] ... Parameters: SUBCOMMAND subcommand [ARG] .. ...

  2. Code4App地址

    http://www.code4app.com/ 一个 ios 很多sample的网站

  3. java编程实现日历

    package com.beiwo.other;/* * 需求:输入一个年份和月份 ,显示当前月日情况 ,星期数要对应准确 * 1.1900年1月1号开始 * 2.星期 : 直接用总天数对7求余数 3 ...

  4. android ViewPager使用遇到的问题

    项目需求是需要实现一个有两页可滑动的界面,就想到了使用ViewPager,在实现是没有深入考虑,就直接使用了PagerAdapter,页面是正常实现了,可是发现无法流畅的刷新页面(直接使用notify ...

  5. 后端Apache获取前端Nginx反向代理的真实IP地址 (原创贴-转载请注明出处)

    ====================说在前面的话==================== 环境:前段Nginx是反向代理服务器:后端是Apache是WEB项目服务器 目的:让后端Apapche获取 ...

  6. Windows 版本的iTunes 修改iPhone的备份路径

    帮朋友解决修改iPhone的备份路径问题,故写篇博客整理记录一下. 所需工具 Junction工具 下载该工具然后将文件放到C:\Windows 目录下,如下图: 找到iTunes的备份路径 Wind ...

  7. ABAP代码编辑器设置--界线

    ABAP编辑器每行允许的最大字符数: Utilities->Settings打开选项卡: 勾选:Downward-Compat.line Length(72) 设置后看到的效果: 设置步骤:

  8. 【前端】CoffeeScript

    es6中的双箭头函数可以省略小括号,coffee中不可以 es6: (x) => x * x // 可以 x => x * x // 可以 coffee: (x) => x * x ...

  9. win7垃圾路径

    @echo off echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmp del /f /s /q %systemdrive%\*._m ...

  10. PHP基础结业感想与总结!

    之前来传智是我认真调查和思考后得出的结论,我做程序员的第一目标是赚钱和学习技术,有一句话"艺多不压身".相信班上所有人的目标都是,这一点都不会庸俗,但是各个人的目的就未必一样了.我 ...