如何给js动态创建的dom添加事件

如何给js动态创建的dom添加事件,第1张

 function addElementDiv(obj) {

var parent = document.getElementById(obj)

//添加 div

var div = document.createElement("div")

//设置 div 属性,如 id

div.setAttribute("id", "newDiv")

div.innerHTML = "js 动态添加div"

parent.appendChild(div)

div.bind('click', function(event) {

alert("我已被动态绑定事件")

})

})

}

因为jquery的click方法,是给dom元素绑定click事件,而不是直接触发click事件

如果要直接触发事件就

改成原生的点击即可

$('a[href="http://www.baidu.com/"]')[0].click()

$('a[href="http://www.baidu.com/"]').get(0).click()

因为click()也属于原生方法

$('a[href="http://www.baidu.com/"]').click()

你这样写,只是给dom元素绑定了点击事件,并且是不起任何作用的点击事件

$('a[href="http://www.baidu.com/"]').click(function(){

alert("abc")

})

这样就是给链接是百度的a绑定了d出对话框的事件,但是不是直接触发

而是在你手动点击的时候触发

如果要使用jquery的触发点击,那就是这样的:

$('a[href="http://www.baidu.com/"]').triggerHandler("click")

1.首先创建html结构,如下图所示,一个input元素,一个按钮,一个空的ul列表。

2.然后添加按钮点击事件,如下图所示,在按钮点击事件中获得input元素。

3.通过value属性我们可以获得用户在input中输入的内容,如下图所示。

4.下面我们来动态创建一个li元素,如下图所示,运用document中的createElement方法即可。

5.创建好li元素以后,下面要做的就是给其设置innerHTML内容,如下图所示。

6.接下来就是获取ul元素了,如下图所示,仍然用getElementById方法。

7.最后通过调用appendChild方法将创建的li元素添加到ul列表中,如下图所示。


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

原文地址:https://54852.com/bake/11698662.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存