怎么给动态生成的元素添加点击事件

怎么给动态生成的元素添加点击事件,第1张

要看看你是怎么“动态添加”元素的。

如果你的元素是用click事件append进来伍誉的

那你的功能函数必须放在这个click事件里面。

比如:

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

$(".toBeAppend").append("<li><span><i class=\"icon J_classtree\">这是元腔槐段素内容</i>")

$(".J_classtree").on("click",function(){

alert("终于进来了")

})

)

如明旦果你把函数放在click事件外面,

最初加载页面的时候,$(".J_classtree")就找不到.J_classtree这个类,那段功能函数就添加不了了。

本文实例讲述了jQuery给动态添加的元素绑定事件的方法。分享给大家供大家参考。具体分析如下:

jquery中绑定事件一般使用bind,或者click,渗猜世但是这只能是对已经加载好的元素定义事件,那些后来添加插入的丛肢元素则需要另行绑定。在1.7版本以前使用live。但是在1.8版本以后推荐使用on。这里介绍jQuery中如何给动态添加的元素绑定事件

在实际开发中会遇到要给动态生成的html元素绑定触发事件的情况

例如

?

1

2

3

<div id="testdiv">

<ul></ul>

</div>

需要给<ul>里面动态添加的<li>标签添加click事本文实例讲述了jQuery给动态添加的元素绑定事件的方法。分享给大家供大家参考。具体分析如下:兆橡

jquery中绑定事件一般使用bind,或者click,但是这只能是对已经加载好的元素定义事件,那些后来添加插入的元素则需要另行绑定。在1.7版本以前使用live。但是在1.8版本以后推荐使用on。这里介绍jQuery中如何给动态添加的元素绑定事件

在实际开发中会遇到要给动态生成的html元素绑定触发事件的情况

例如

?

1

2

3

<div id="testdiv">

<ul></ul>

</div>

需要给<ul>里面动态添加的<li>标签添加click事

最好是在元素生成的时候就加上事件,不然的话比较麻烦。

在jquery中,你也可以用live()和delegate()这样的方法绑定元素,是实时监听的。

但是最好还是在元素生成的时候就加上事件:

$('#btn').bind('click', function(event) {

    /* Act on 绝指the event */

    $("<li>Hello</li>").appendTo("#list").bind('click', function(event) 并脊配{

      /* Act on the event */

      console.log($(this).text())

    })

    

  })

在mootools中对应的方法:

// Creating an new anchor with an Objectvar myAnchor = new Element('a', {

    href: 'http://mootools.net',

    'class': 'myClass',

    html: 'Click me!',

    styles: {

        display: 'block',

        border: '1px 野谨solid black'

    },

    events: {

        click: function(){

            alert('clicked')

        },

        mouseover: function(){

            alert('mouseovered')

        }

    }})


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11975010.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存