我正在学习JQuery并面临一些问题。
<html>
<head>
<link rel="stylesheet" href="css/puzzle.css" type="text/css" />
<script src="scripts/jquery.js" type="text/javascript"></script>
<script src="scripts/test.js" type="text/javascript"></script>
</head>
<body>
<div id="parent">
<a href="#" class="link1">link1</a>
<a href="#" class="link2">link2</a>
<a href="#" class="link3">link3</a>
</div>
<body>
</html>
$(
function() {
$("#parent").on("click", "a", function() {
linkClick(this);
});
function linkClick(link) {
$("#parent a").first().off("click");
console.log(link);
}
}
)
问题1:当用户点击其中一个链接时,我可以删除该链接的事件管理器吗?
问题2:如果问题1已被底层化,我可以将onclick事件处理程序添加回“指定的链接”而不影响其他链接吗?
感谢您的阅读。
==
我尝试使用 $(“#parent a”)。first()。off(“click”); 取消绑定第一个链接的事件处理程序。 但无论我点击第一个链接多少次,该控制台仍会打印数据。
如何删除链接的事件处理程序,然后在几秒钟内将其添加回来
答案 0 :(得分:0)
使用off
删除活动:
$( "#parent a").first().off( "click" );
添加活动:
$( "#parent a").first().on( "click", function(){
//click event code
})
答案 1 :(得分:0)
使用:
//Remove click event for first element
$( "#parent a").first().off("click");
//Bind new event to element:
$( "#parent a").first().bind('click',function(){
//click event code
})