当前位置:  开发笔记 > 前端 > 正文

处理由jQuery插入的HTML元素的事件

如何解决《处理由jQuery插入的HTML元素的事件》经验,为你挑选了1个好方法。

我目前有一个锚标记,当单击时,会将另一个锚标记附加到DOM.这一切都是通过jQuery完成的.我知道要添加的锚标签的"id"属性是什么.但是,当我尝试以下代码时,它无法处理新添加的锚标记的click事件:

$("#id").click(function(){alert("test");});



1> JakeJ..:

您遇到的问题是,当您拥有代码时$('#Element').click(function(){...});,它只会在首先运行该代码时出现的元素上运行代码,如果您使用的是最新版本的jQuery,则应使用此代码使它工作:

//This makes sure that all the elements are ready to receive jQuery bindings
$(document).ready(function(){

    //The .on function will attach the event to all current
    // elements that match the selector and all future elements
    // that will match the selector
    $(document).on('[EVENT]', '[SELECTOR]', function(){
        //Do Stuff
    });

});

此代码以及附加到元素的任何其他jQuery代码(使用.on()函数或不使用)都应该使用document.ready如上所述.

这将为现在的任何元素运行事件(在您的情况下,[EVENT]将是click),并在将来匹配[SELECTOR](在您的情况下#id)

JSFiddle示例:http://jsfiddle.net/DhWmP/

来源:http://api.jquery.com/on/&在需要功能的页面上插入元素的经验.

推荐阅读
地之南_816
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有