怎样用js或jquery操作span的单击事件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样用js或jquery操作span的单击事件?相关的知识,希望对你有一定的参考价值。

参考技术A $(span).click(function()
//单击之后的时间放这里
);
参考技术B Dhtml 中, 可以用document.getElementById document.getElementsByName document.getElementsByTagName 来获取要操作的对象, 然后 给对象绑定onclick事件就好.本回答被提问者采纳

jQuery中的事件委派(代理事件)delegate

jQuery给我们提供了强大的js库。我们可以用jQuery脚本向页面添加元素,随着程序进行添加的元素怎么添加事件呢?就需要使用delegate了。 delegate() 方法可以为已有或新添加的页面元素绑定已定义的事件:
如下:
html:

<body>
<div>
<span>123</span><button>添加</button>
</div>
</body>

jquery:

$(function(){
//定义测试函数
function foo(){
alert($(this).text())}
//已有元素
$("div span").on(‘click‘,foo)
//点击按钮添加新元素
$("div button").click(function(){
$("div").append("<span>123</span>")
})

          //给新元素绑定事件
          $("div").delegate(‘span‘,‘click‘,foo)
          //$("div").undelegate(‘click‘)              
      })

这样就可以为添加的新元素绑定事件,并且原有的span元素会弹出两次文本内容,证明delegate也给匹配到的当前的元素绑定了事件。
如果想要消除绑定很简单:

$("div").undelegate(‘click‘)

删除由delegate委派绑定的事件,不是通过delegate委派的事件则不会删除。

以上是关于怎样用js或jquery操作span的单击事件?的主要内容,如果未能解决你的问题,请参考以下文章

怎样给jQuery动态附加新的元素

vue.js中怎样用onload事件

怎样用js触发a标签的click事件

怎样用jquery写一个事件?

JQuery中this和event.target的区别

jQuery中的事件委派(代理事件)delegate