jQuery:当div变得可见时如何为其绑定事件?

2023-11-24

我有一个 div 元素:<div id="tab1"> Tab data </div>.

当这个 div 变得可见时如何绑定自定义事件(获取display: block;)?

而且我想在这个 div 变得不可见时绑定一个事件(获取display: none;).

我想用 jQuery 来做这件事。

编辑: 我正在使用 ajax 内容制作简单的选项卡。我希望仅当该选项卡可见时才通过 ajax 更新该选项卡上的内容。


根据可见性启动和停止 AJAX 更新。您可以使用.is()返回 TRUE 或 FALSE:visible:

var timer; // Variable to start and top updating timer

  // This if statement has to be part of the event handler for the visibility
  //   change of selector..... so there might be more straight forward solution
  //   see the last example in this answer.
if ($(selector).is(":visible"))
{
    // Start / continue AJAX updating
    timer = setInterval(AJAXupdate, 1000);
} else
{
    // Stop AJAX updating
    clearInterval(timer);
}

这是一个定时器的简单示例,当它不可见时就会停止。请注意,当数字不可见时,它们不会继续增加:

(function() {    

    var switcher;                             // variable to start and stop timer

      // Function / event that will be started and stopped
    function count() {
        $("div").html(1 + parseInt($("div").html(), 10));
    }

    $(function() {                                               // <== doc ready

          // Start timer - it is visible by default
        switcher = setInterval(count, 1000);

        $("input").click(function() {

            $("div").toggle();                         // Toggle timer visibility

              // Start and stop timer based on visibility
            if ($("div").is(":visible"))
            {
                switcher = setInterval(count, 1000);
            } else
            {
                clearInterval(switcher);            
            }
        });
    });
}());
​

jsFiddle 示例


当然,在上述情况下,也许您的情况下,简单地交替打开和关闭更新会更直接:

(function() {    

    var switcher;

    function count() {
        $("div").html(1 + parseInt($("div").html(), 10));
    }

    $(function() {

        switcher = setInterval(count, 1000);

        $("input").toggle(function() { 
            clearInterval(switcher);
            $("div").toggle(); }, 
        function() {                        
            switcher = setInterval(count, 1000);
            $("div").toggle();
        });

    });

}());

jsFiddle 示例

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery:当div变得可见时如何为其绑定事件? 的相关文章

  • 数据表日期范围过滤器

    如何添加日期范围过滤器 like From To 我开始进行常规搜索和分页等工作 但我不知道如何制作日期范围过滤器 我正在使用数据表 1 10 11 版本 My code var oTable function callFilesTable
  • 单击引导分页链接时调用 jquery 函数

    我想在单击引导分页链接时调用 jquery 函数 假设我想从第1页遍历到第2页 应该调用一个jquery函数 我正在使用以下代码 但它不起作用 ul pagination on click li function alert page ch
  • jQuery:查找文本并替换为 HTML

    我尝试查找并替换文本 使用 jQuery 实际上我正在尝试在文本周围添加一个 span 元素 我还应该能够再次删除跨度而不会丢失里面的文本 例如 假设我有以下情况 span This is a span element span 我希望能够
  • 如何在Jquery-Select2中设置多值选择中的选定值?

    我正在绑定我的下拉菜单Jquery Select2 它工作正常 但现在我需要绑定我的多值selectBox通过使用Jquery Select2 我的下拉菜单 div class divright div
  • 仅使用 Jquery 验证的字母

    我尝试了文章中的每个解决方案one https stackoverflow com questions 4115372 jquery validate plugin adding a custom validator to accept l
  • 如果元素隐藏则忽略 .NET 验证器(显示:无)

    我们经常在使用 javascript css 隐藏的元素 即 display none 上使用 NET 验证器时遇到问题 例如 可能有语法错误 但不用担心
  • 如果我拒绝确认,如何防止更改选择框值

    我正在使用国家 地区选择框 当用户选择一个国家 地区时 会出现添加分支链接 并且用户在该国家 地区下添加分支 但是当用户想要更改国家 地区时 则应销毁有关该国家 地区的所有分支 在更改国家 地区之前 会出现一个确认框并显示警告 一切正常 但
  • 如何动态添加和删除jquery选项卡?

    我有一个 aspx 页面 上面有 2 个静态 jquery 选项卡 单击其中一个选项卡上的按钮后 我想动态添加一个新选项卡 该选项卡从另一个 aspx 页面加载其内容 我也尝试使用以下示例 http jquery ui googlecode
  • 如何在文档加载时立即进行 AJAX 调用

    我想在加载文档后立即执行 ajax 调用 我正在做的是加载一个字符串 其中包含我将用于自动完成功能的数据 这就是我所做的 但它没有调用servlet 我删除了对各种 JS 脚本的调用 以使其更清晰 我在代码中做了几个类似的 AJAX 调用
  • 如何向 jQuery Tokeninput 添加占位符?

    如何将占位符添加到 jQuery Tokeninput 字段 一个正常的placeholder属性在这里不起作用 对于这样的输入
  • Jquery ajax请求,等待最新请求完成

    我有一个文本框 每次用户输入一个字母时 我都会使用 ajax 请求进行搜索 并为用户 实时 显示结果 通常 当用户键入字母时 发出请求所需的时间比用户输入新字母所需的时间更长 因此在第一个请求结束之前发出新请求 如果第一个请求能够在我执行下
  • 使用模态表单 ajax 超出 HTMLFormElement.toString 的最大调用堆栈大小

    我想使用模态窗口中的 ajax 请求提交表单 单击此链接可打开该模式 a class btn btn primary i class fa fa edit i Write a review a 模态窗口 div class modal fa
  • jQuery 验证规则和消息 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我在设置 jQuery 验证的规则和
  • 用数组反向查找对象

    假设我有一个这样的对象 resourceMap a 0 1 2 3 4 5 6 7 8 9 10 b 11 12 c 21 23 d 54 55 56 57 510 确定是否的最佳方法是什么resourceId 21将会 c 我们不知道钥匙
  • 将杂散文本包裹在 div 中

    如何选择 任何没有包含标签的内容 来在 jQuery 中添加包装器 前任 div class post div class whatever This should remain untouched div I want to wrap t
  • jquery:当我在文档上附加一层时,如何重置文档滚动条?

    当我在文档上附加图层时 如何重置文档滚动条 例如 它就像 Facebook 页面 当您有一个很长的文档时 您需要向下滚动才能查看较旧的图像 帖子 当你点击照片时 滚动条发生了变化 从顶部开始 但文档页面根本不跳转 当关闭照片查看器图层时 滚
  • 如何使 jQuery 向上动画

    我有一些 jquery 运行得相当好 但是当我将鼠标悬停在有问题的元素上时 底部向下扩展 这并不意外 但不是所需的效果 我希望元素的底部保持静止 而元素的顶部向上扩展 如果您想查看我目前拥有的内容 您可以导航至http demo ivann
  • Jquery:选择菜单以显示和隐藏某些div元素

    我正在创建一个选择菜单 根据所选选项显示和隐藏某些 div 像这样的东西
  • 当选择下拉列表中的某些值时,取消选中复选框

    当我从下拉列表中选择某个值或用户未从下拉列表中选择任何值时 我需要取消选中复选框 我现在正在使用 Jquery 这是我现在使用的代码 但它不起作用 Script
  • jQuery:动态添加 DOM 元素时尝试将函数挂钩到 onclick,但它立即执行该函数

    我正在使用 jQuery 动态 我的意思是在运行时 向页面的 DOM 添加一个 span 元素 create add task button document createElement span attr id activityNameH

随机推荐

  • Dependency Walker 报告 IESHIMS.DLL 和 WER.DLL 丢失?

    在带有 Internet Explorer 8 的 Windows XP Professional SP3 上 当我对我的可执行文件运行 Dependency Walker 时 它会报告 IESHIMS DLL 和 WER DLL 无法找到
  • 在 RAD Studio 中使用正则表达式替换文本

    我想替换例如F G X Y with H X Y 在 RAD Studio IDE 中 我使用的正则表达式是 求表达式 F G 替换表达式 H 1 结果并不像我想象的那样 Result H 1 RAD Studio 似乎无法将 1 识别为两
  • 将 Python 函数存储在 JSON 中

    假设我有一个 JSON 文件 如下所示 x 5 y 4 func def multiplier a b return a d 这过度简化了我想要尝试和做的事情 但基本上我正在尝试将 python UDF 写入 JSON 文件 有没有办法做到
  • 为什么仅在存在存储初始化循环时才计算用户模式 ​​L1 存储未命中事件?

    Summary 考虑以下循环 loop movl 0x1 rax add 0x40 rax cmp rdx rax jne loop where rax被初始化为大于 L3 缓存大小的缓冲区的地址 每次迭代都会对下一个缓存行执行存储操作 我
  • Clojure 中的不一致:宏中的函数和 IllegalArgumentException

    以下两个在宏中使用函数的示例导致评估没有错误 defmacro works let f fn 1 f works gt 1 defn my nullary fn fn 2 defmacro also works let f my nulla
  • Rails habtm 连接

    我之间有这种关系类别 产品和品牌 class Brand lt ActiveRecord Base has many products end class Category lt ActiveRecord Base has and belo
  • x86 CPU 上中断延迟的估计

    我正在寻找有助于估计 x86 CPU 中断延迟的信息 这篇非常有用的论文可以在 datasheets chipdb org Intel x86 386 technote 2153 pdf 中找到 但这篇论文给我提出了一个非常重要的问题 如何
  • 在Java中,如何从派生类中的重写方法调用基类的方法?

    我有两个Java类 B 它扩展了另一个类A 如下 class A public void myMethod class B extends A public void myMethod Another code 我想致电A myMethod
  • 用户代理可以在其请求中设置大于零的 max-age 吗?

    我有一个疑问max age读取 Http 缓存后的行为rfc 设想 用户代理 GET foo 源服务器响应头 cache control max age 120 服务器告诉用户代理所请求的资源应在 2 分钟后重新验证 1分零几秒后 用户代理
  • 将列和行大小重置为默认值

    我正在构建一个脚本 通过自定义菜单项访问 其中还将包含一些样式 例如设置背景颜色 更改列宽 行高以及插入大量内容 现在我想实现一个 重置 功能 setall单元格恢复为默认的空 Google 表格的样子 包括所有内容 我找到了clear f
  • UISearchController - 警告尝试加载视图控制器的视图

    我收到以下错误 尝试加载视图控制器的视图 不允许解除分配并可能导致未定义的行为 尝试了以下解决方案 但对我不起作用正在解除分配时尝试加载视图控制器的视图 UISearchController 链接中提供了演示项目 点击主控制器中的添加按钮
  • Google App Engine 模块间通信授权

    In the 谷歌文档 it says 您可以将任何手动或基本扩展模块配置为接受来自应用程序中其他模块的请求 方法是将其处理程序限制为仅允许管理员帐户 并在模块的配置文件中为适当的处理程序指定 login admin 实施此限制后 来自应用
  • “控制器”是命名空间,但像类型一样使用

    当我创建新控制器时总是抛出错误 Controller 是命名空间 但像类型一样使用 我不知道如何修复它 我已经安装了该包 在此输入图像描述 将文件夹名称更改为 Controllers 将命名空间更改为 Controllers 因此您的代码应
  • 未复制引用的项目依赖项 DLL

    我的项目解决方案目前有三个项目 我的项目 这是我的主要启动项目 使用 NET Framework 4 7 WPF 特定于 UI 我的项目 核心 类库 NET Standard 2 0 保存模型以及所有 幕后 数据 我的项目 关系 类库 NE
  • SwiftUI 更新核心数据对象更改视图

    我遇到的问题是 当我从工作表视图更新核心数据资产对象时 更改不会反映在 AssetListView 的 UI 中 请注意 从工作表视图插入新对象does刷新 AssetListView 的 UI 删除工作表视图中的对象也刷新AssetLis
  • 在jsp中显示日期差异

    我在数据库中有一个日期字段 仅存储日期而不存储时间 现在我想知道在 jsp 页面中显示当前日期和我的日期字段的天数差异 所以我应该喜欢 databaseDate 2012 11 30 currentDate 2012 11 27 3 day
  • MS Access 编程概述 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我是一名 Java EE 开发人员 刚刚有人联系我 希望我为他的业务提供一个可以与他们的 MS Access 后端 集成的应用程序的报价 我希望发布
  • 为什么 XML 中的节点顺序很重要?

    我最近一直在处理一个 API 它要求 XML 文档的节点按特定顺序排列 我想知道为什么他们觉得有必要强制执行这一点 而我完全找不到理由让事情变成这样 例如 这是正确的 xml 大大简化
  • 将 exe 从一个项目复制到另一个项目的调试输出目录

    我有两个项目 ProjOne exe 和 ProjTwo exe 我想构建 ProjOne exe 它知道它依赖于 ProjTwo exe 因此它在构建 ProjOne exe 时会复制 ProjTwo exe 我还有一个 ProjThre
  • jQuery:当div变得可见时如何为其绑定事件?

    我有一个 div 元素 div Tab data div 当这个 div 变得可见时如何绑定自定义事件 获取display block 而且我想在这个 div 变得不可见时绑定一个事件 获取display none 我想用 jQuery 来