位置: 编程技术 - 正文

JavaScript自执行函数和jQuery扩展方法详解(js自动执行点击事件)

编辑:rootadmin

推荐整理分享JavaScript自执行函数和jQuery扩展方法详解(js自动执行点击事件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js自动执行方法,js直接执行function,jquery自执行,js直接执行function,html自动执行js函数,html自动执行js函数,javascript自执行函数,javascript自执行函数,内容如对您有帮助,希望把文章链接给更多的朋友!

我们通常将JS代码写在一个单独的JS文件中,然后在页面中引入该文件。但是,有时候引入后会碰到变量名或函数名与其它JS代码冲突的问题。那么如何解决这个问题呢?作用域隔离。在JS中,作用域是通过函数来划分的,将JS代码封装到函数中进行调用可以避免变量名/函数名冲突的问题,但是这也并不是万无一失,因为封装函数本身有可能和其它函数重名,解决方案:自执行函数。

自执行函数是用一对圆括号将匿名函数包起来,加括号(传参)会立即执行。因为函数无名字,实现了作用域的绝对隔离和函数名的冲突问题。基本形式如下:

比如我们在custome.js文件中写了一些JS逻辑,并封装到函数init中。我们用自执行函数将自己定义的函数init包起来,就像下面这样。

当我们在html中引入custome.js:<script src="custome.js"></script>,自执行函数会立即执行,进而执行内部定义的init函数:

不过,自执行函数立即执行的特性,使其很难调用。通过定义jQuery扩展方法,可以解决这一问题,拿到自执行函数调用和执行的主动权。

首先我们看一下定义jQuery扩展方法的基本形式:

JavaScript自执行函数和jQuery扩展方法详解(js自动执行点击事件)

这样,通过$.myMethod()或jQuery.myMethod()就可以调用上面定义的方法。

定义jQuery扩展方法还有另外一种方式:.fn

通过如上方式定义的扩展方法,需要通过jQuery选择器调用,比如通过标签选择器$("button").myMethod(args)

了解了JS自执行函数和jQuery扩展方法后,我们将二者结合起来。

下面我们利用自执行函数立即执行的特点,来定义jQuery扩展方法:

说明,这个自执行函数接收jQuery对象作为参数,然后在内部为jQuery定义一个扩展方法myMethod,该方法执行真正的逻辑代码init函数

调用:

说明:

jQuery文件引入后,jQuery对象全局可用;紧接着引入自定义JS文件custome.js,其中的自执行函数接收jQuery对象为参数,立即执行,在内部为jQuery定义一个扩展方法myMethod然后我们就可以在页面加载完成后,通过调用$.meMethod()或jQuery.myMethod()来执行init函数

标签: js自动执行点击事件

本文链接地址:https://www.jiuchutong.com/biancheng/368452.html 转载请保留说明!

上一篇:Popup弹出框添加数据实现方法(popupwindow底部弹出)

下一篇:JavaScript中Require调用js的实例分享(js require())

  • 增值税报表解读
  • 应收账款的账龄在年报的哪里
  • 房产税房产原值包括地价吗
  • 土地增值税预征管理办法
  • 递延收益涉税
  • 企业会计制准下增值税科目的核算
  • 房改房增值税
  • 契税差别
  • 经营公租房的租金收入交房产税
  • 回收废品残料会计分录
  • 欠款还了一部分怎么写起诉书
  • 农业合作社预付款怎么算
  • 提前还款罚息是多少
  • 增值税普通发票税率
  • 进口关税专用缴款书怎么做分录
  • 工资3500该不该辞职
  • 承租人转租需要退押金吗
  • 餐饮发票怎么进行财税处理?
  • 应收账款的贷方反映
  • 提供出口收汇核算方法
  • 固定资产直接进费用违背什么
  • 个税手续费收入要交税吗
  • 公司法人借款给公司怎么取出来
  • 专票小数点后两位没有显示出来可以认证吗
  • 私营公司可以构成单位犯罪吗
  • 收到返还代扣代缴手续费如何入账?
  • 可引导的macos
  • 预收和应收怎么转换
  • 民办非企业的财务会计制度是什么
  • 代理进口的增值税如何入账
  • 哪个是发票抵扣项目
  • 多台电脑共享打印机怎么设置
  • latex双栏图片
  • 十分钟带你了解阿氏圆
  • 双轨制会计核算原则
  • 坏账损失的会计分录
  • 空调维修费进什么会计科目
  • js鼠标事件包括哪几种
  • 《web应用开发》是什么
  • 股权转让完税证明要多少时间
  • 款付了对方没开发票咋办
  • python 断言
  • 误餐补助所得税处理
  • 服务业加计扣除比例
  • 报销差旅费属于什么现金流量项目
  • 认缴出资和注册资本
  • 如何升级智慧中小学app
  • 初学者应该看什么书
  • 织梦一直显示上一页和下一页
  • 房屋出租收入是其他业务收入吗
  • 数据库双亲结点
  • 培训机构财务怎么做账
  • 增值税发票查询全国统一发票查询平台
  • 房屋维修基金是谁交
  • 事业单位财政直拔工资误填为劳务费怎么写情况说明
  • 暂估入库的商品怎么做账
  • 会计科目表2023
  • 小规模纳税人转一般纳税人当月如何申报
  • 月末需要做的会计分录
  • 库存商品的出售
  • 资产减值后折旧怎么算
  • Mysql 数据库 拷贝 原文件
  • mysql数据库内存缓存设置
  • 鼠标系统怎么安装
  • Win7安装i219v网卡驱动
  • win7命令提示符怎么打开
  • win10打开小娜
  • xp怎么删除电脑系统
  • linux的sbin
  • win8.1系统升级win10
  • win8鼠标指针不见了
  • unity 手册
  • python利用csv模块在对csv文件进行操作
  • 用javascript写表单代码
  • 简要说明javascript的作用
  • 'tools.jar' seems to be not in Android Studio classpath. Please ensure JAVA_HOME points to JDK rathe
  • unity的text
  • 面向对象的程序设计语言是
  • 国家税务局何时上班
  • 济南房产税如何计算公式
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设