点击事件内嵌点击事件造成多次绑定

如果一个点击事件内部有另外一个点击事件,如下

$(function(){
    $("#btn1").click(function() {
        console.log("outside");
        $("#btn2").click(function() {
            console.log("inside");
        });
    });
});

这样,在每次点击外部的点击事件后,内部的点击事件就会多次绑定,造成事件的重复触发,这是容易出错的一点.

如果必须要写成内嵌点击事件的话,可以先解除点击事件在绑定.

$("#btn2").unbind("click").bind("click", function() {
  console.log("inside");
});
时间: 2024-08-29 06:37:55

点击事件内嵌点击事件造成多次绑定的相关文章

ScrollView内嵌EditText滚动事件冲突处理

开门见山!如果EditText内容过长,但控件高度有限的时候,在滑动内容的时候就会有滑动冲突了,处理方式是要先判断EditText内容是否过长,即可滚动时,设置父容器(即ScrollView)分发事件为关闭状态,否则为打开状态.附上相关代码: 判断EditText内容是否过长可滚动: public static boolean canVerticalScroll(EditText editText) {     // 滚动的距离     int scrollY = editText.getScr

CSS-07 行内设置点击事件

在标签行内设置点击事件: <a href="#" onclick="obj.search()">查询</a> js代码: obj = { search : function(){ alert(123); } }; 原文地址:https://www.cnblogs.com/Helen-code/p/12151627.html

Sencha touch navigation 内嵌list,itemTap第二次点击不跳转的问题

情景:navigation view 内嵌list,第一次触发list事件itemtap,正常跳转至详情页,点击"defaultBackButton"返回至list正常;再次点击触发itemtap时,无反应; 导致问题会有以下两种: 1,controller中对list使用Id做引用. 相关文章问题请见: http://blog.csdn.net/xbblog/article/details/7628237 谢谢该仁兄提供资源,这里只做引用; 2,详情页中关键字冲突的问题(这也是让我和

js的事件冒泡和点击其他区域隐藏弹出层

一.前言 在编写页面的时候,我们经常使用到弹出层.对于弹出层,原本的意义就是增加与用户的交互,提升用户的好感度.如果弹出层都没有较好的体验,那何谈通过交互来提升好感... 首先提出几个弹出层的注意点: 弹出层的界面需要统一,不一致的弹出层并不能增加美感,相反还会显得页面布局更加杂乱无章: 弹出层的设计一定要好看,按钮要符合项目的主色调: 弹出层的宽度固定屏幕占比,设置max-width,高度根据内容自适应: 点击其他区域隐藏弹出层... 二.正文 今天,主要说说点击其他区域隐藏弹出层.笔者被这个

微信公众号弹出框在IOS最新系统中点击键盘上的“完成”导致事件无法触发问题

微信公众号弹出框在IOS最新系统中点击键盘上的"完成"导致事件无法触发问题 问题描述 微信公众号中有项功能是弹框模态框,输入信息后保存操作.但是在IOS系统中发现,当输入内容后,点击键盘上的"完成"后,再点击"提交"无反应:跳过"完成"直接点击"提交"就可以正常保存 问题原因 当键盘弹出后,会将body向上弹起:但是点击"完成"后并没有将body拉回,导致点击事件不在body内而无法触发

双击、三击和多次点击事件

一.目标 1.实现双击点击事件 2.实现三击以及更多次点击事件 二.代码实现 第一种方法: 1.定义一个long类型的变量(取名firstClickTime),用于储存第一次点击的时间: 2.在点击事件中,通过if语句判断第一次点击时间(firstClickTime)是否大于零,如果成立则在if语句中再创建long类型的变量(取名secondClickTime),用于储存第二次点击时间,再通过if语句判断这两次点击的时间差是否小于500毫秒.如果成立则执行相应语句:若大于500毫秒,则将第一次点

asp.net中Button按钮点击两次才执行Onclick事件的原因

今天写了一个简单的聊天室,有登录页面和聊天室,当从登录页面跳入到聊天室过后,却发现要点击两次发送按钮才能发送到显示区,然后发送按钮正常运行. 通过不断测试,发现,第一次点击并没有执行点击事件,第二次才执行的点击事件.并且也找到了问题所在.下面用一个简单的小例子来说明: 页面Server_Transfer.aspx: <asp:Button ID="Button1" runat="server" Text="Button" OnClick=&

android通知栏Notification点击,取消,清除响应事件

主要是检测android通知栏的三种状态的响应事件 这次在实现推送需求的时候,要用到android通知栏Notification点击后进入消息页面,因为要实现一个保存推送用户名字的功能,我在点击后处理了这个功能,但是测试发现我点击删除或者滑动清除后这个功能并没有执行,所以才意识到要处理删除和滑动清除的事件: 首先实现一个BroadcastReceiver public class NotificationBroadcastReceiver extends BroadcastReceiver {

Android内嵌网页webview点击其中的链接跳转到我们应用内的Activity

在一个大的Android项目中,由于客户端来不及更新和实现,经常会内嵌一些网页(在一些大型的互联网公司,PC的产品总是跑在客户端的前面),比如活动页面,通常可以内嵌用html5实现的页面,可以适配手机.但是这些网页中有好多链接,但是这些链接有些内容有是我们客户端已经实现的,比如有一个注册链接,其实客户端也实现了注册功能,我们不想再继续跳转到网页注册,而是打开客户端某个注册Activity,可以通过以下方式来实现: xml 文件,如下: java代码如下: ? 1 2 3 4 5 6 7 8 9