【问题标题】:How to reopen a closed click event in jQuery without reload?如何在不重新加载的情况下在 jQuery 中重新打开关闭的单击事件?
【发布时间】:2020-06-13 09:16:14
【问题描述】:

我正在尝试使用jQuery 重新打开已关闭的click event,但我不想为此刷新我的页面。为了更好地理解,请看一下我真正想要的:

$(function (){
Var i = 0;
Var j =0;
$("#first").on("click" , function (){
i++;
});
$("#second").on("click" , function (){
j++;
});
if(i = j){
$("first").off("click");
}
$("#third").on("click" , function (){
alert("what should I write here to reopen #first ID closed click event, without any refresh or reload");
});
});

点击我的#third ID 后,我希望我的#first ID 与关闭的点击事件在点击时再次开始响应!

已编辑 |

我为什么要这样做:我必须使用 off() ,这样就没有人可以在我的网站给出的列表中添加任何内容,只要在超出限制后单击 #first ID,并且只有在删除之前已满的列表后才能这样做...

【问题讨论】:

    标签: jquery jquery-click-event


    【解决方案1】:

    我不确定我是否遵循用例,但你不能在第一次点击中放一个 if 语句,并且仅在 i 不等于 j 或仅当 i 小于时才增加比j?

    如果可行,您可以删除 .off()

    【讨论】:

    • 我根本做不到你所说的,因为我必须使用off(),所以没有人可以通过单击#first ID 在我的站点中提供的列表中添加任何内容超出了限制,只有在删除之前已经满的列表后才能这样做......它比你想象的要复杂......
    • 很抱歉给您带来了困惑。根据示例,您似乎可以通过这种方式禁用 click 内的代码。 detach() 会是一个更好的解决方案,或者这个帖子:stackoverflow.com/a/23070551/3103434
    • 亲爱的Spudly 我认为 detach() 方法保留数据和事件,如何使用此方法重新引入已关闭的事件?你能解释一下吗!?
    • 我没有看到在 .off() 被调用后再次绑定 .on() 的方法,所以说实话,我不太确定。我以前没有遇到过这样的用例。看起来您可以在 detach() 之后调用 attach(),所以我猜这可能值得研究。如果没有,希望其他人会在这里发布对此类用例有更好经验的人。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-13
    • 2013-09-23
    • 2013-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多