当前位置: 首页 > 面试题库 >

重新启动事件监听器javascript / jquery

通典
2023-03-14
问题内容

我有一个页面,其中通过ajax引入了内容。我遇到的问题是在内容加载后添加相关的事件侦听器。有没有办法告诉浏览器再次从头开始运行所有脚本?

以下是从页面顶部开始运行的简单代码示例,显然,通过AJAX引入的与’.RRCustomizeBox
.customize’匹配的任何新html元素都不会具有以下click事件。

例如:

_vvdCMS.kklsRegions = {

    init: function (){
        $(document).ready(function(){

            $('.RRCustomizeBox .customize').click( function(){
                _vvdCMS.kklsRegions.showRRCustoms(this);
            });

        });
    },

    showRRCustoms: function(obj) {
        var objParent = $(obj).parent();
        objParent.find('.RRCustomizeBoxForm').fadeIn(700);
    }
}
_vvdCMS.kklsRegions.init();

谢谢你的提示

约翰


问题答案:

您可以将所有初始化代码放在函数中,然后从两个位置调用该函数:

  1. 在document.ready()中
  2. 加载新内容后

例如:

function initDynamicEventHandlers() {
    // set up your event handlers here
}

$(document).ready(initDynamicEventHandlers);

$(whatever).load(url, initDynamicEventHandlers)

您将必须确保未替换的任何内容都不会安装多个事件处理程序。

或者,第二种选择是,对于某些类型的逻辑(例如鼠标和按键事件),可以使用委托事件处理并在将事件处理附加到未替换的静态父对象后安装该事件处理,并且事件处理无需更改即可您的动态内容在下面发生了变化。

为此,请使用的委托形式.on()

$(static parent object selector).on('click', dynamic object selector, fn)


 类似资料:
  • 应用事件监听器是实现一个或多个 Servlet 事件监听器接口的类。它们是在部署 Web 应用时,实例化并注册到 Web 容器中。它们由开发人员在WAR 包中提供。 Servlet 事件监听器支持在 ServletContext、HttpSession 和ServletRequest 状态改变时进行事件通知。Servlet 上下文监听器是用来管理应用的资源或 JVM 级别持有的状态。HTTP 会话

  • 问题内容: 我想知道是否有人可以帮助我理解如何准确地创建不同的自定义事件侦听器。 我没有事件的具体案例,但我想大致了解它是如何完成的,因此可以将其应用于需要的地方。 我想做的是,以防万一有些人可能需要知道的是: 问题答案: var evt = document.createEvent(“Event”); evt.initEvent(“myEvent”,true,true);

  • 我正在使用Hibernate 5和Spring 4.2。3.我找不到将eventListener添加到SessionFactory范围的方法。我只需要在hibernate持久化对象之前设置一个日期。我在Spring定义了sessionFactory。xml 我有我的GenericDAOImpl在哪里得到这个会话工厂: 我已经看到了几种方法,但其中一些方法不适用于Hibernate 5(如)。我找不

  • 主要内容:什么是AWT事件监听器,AWT EventListner 接口声明,常用的AWT事件监听器什么是AWT事件监听器 AWT事件侦听器代表负责处理事件的接口。Java 为我们提供了各种事件侦听器类,但我们将讨论更常用的那些。事件侦听器方法的每个方法都有一个作为对象的参数,该对象是 EventObject 类的子类。例如,鼠标事件侦听器方法将接受 MouseEvent 的实例,其中 MouseEvent 派生自 EventObject。 AWT EventListner 接口声明 Event

  • 问题内容: 我目前正在尝试编写一些JavaScript,以获取已单击的类的属性。我知道要以正确的方式执行此操作,应该使用事件侦听器。我的代码如下: 我希望每次单击其中一个类来告诉我该属性时,都会得到一个警告框,但是不幸的是,这不起作用。有人可以帮忙吗? ( 注 - 我可以很容易地做到这一点,但我 不 喜欢使用它) 问题答案: 这应该工作。返回与条件相匹配的元素的数组(类似于 数组 )(请参阅编辑)

  • 本文向大家介绍vue监听滚动事件实现滚动监听,包括了vue监听滚动事件实现滚动监听的使用技巧和注意事项,需要的朋友参考一下 在vue中实现滚动监听和原生js无太大差异,下面是一个简单的demo,可在控制台查看结果 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持呐喊教程!