位置: 编程技术 - 正文

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())

  • 外国驻华使领馆自用车辆
  • 税收征管法实施细则全文最新
  • 企业购买银行理财的条件
  • 个人申请代开发票流程怎么操作
  • 出口合同包括哪些条款
  • 金蝶可以自动结转成本吗
  • 坏账准备和信用账户区别
  • 农业生产成本二级科目有福利费支出吗
  • 作废的发票还需要保存吗
  • 事业单位个税可以自行申报吗
  • 对方把发票丢了可以重开吗
  • 资产减值准备会计科目编码
  • 会计凭证填制错误怎么办
  • 预缴增值税附加税怎么算
  • 消费税价外费用的计算
  • 海关进口关税专用缴款书可以抵扣吗
  • 营改增要交增值税吗
  • 计提递延所得税的会计分录
  • 微信红包税前扣除
  • 固定资产一次性扣除账务处理
  • 可供出售金融资产会计处理
  • 高薪补贴需要交什么税
  • 商品进价销售要上税吗
  • switpa.exe - switpa是什么进程
  • 新买的电脑如何激活windows
  • 非常损失计入
  • 进项发票没认证可以开红字申请单吗
  • 电脑时间同步不了解决方法
  • 变更营业执照中心怎么改
  • 长期借款和短期借款会计分录的区别
  • 保险税前扣除比例是多少
  • PHP:is_dir()的用法_Filesystem函数
  • 会计账与银行账不符怎么调整
  • 实收资本与注册资本之间的关系
  • 常用的几种布局格式
  • 电子税务局增值税申报流程
  • react的高阶组件理解
  • 公司年终奖怎么入账
  • 短期借款转为长期借款引起的会计要素变化
  • 帝国cms怎么加自己的名字
  • 非财政补助结转和非财政补助结余的区别
  • 上年度的企业所得税汇算清缴怎么查询
  • 收到个人所得税汇算清缴短信
  • 混合销售行为的例子
  • 小规模纳税人利润率一般是多少
  • 应收账款的贷方发生额表示什么
  • 建筑业营改增的主要内容
  • 出口货物弃货
  • 股东打给公司的投资款
  • 资质平移股权账务怎么办
  • 现金支票存根金额怎么写
  • 货款尚未收到增值税
  • 应交税费进项税额转出期末怎么结转
  • 代销手续费如何交增值税m
  • 退货款现金流量如何做
  • 管理不善造成的存货盘亏损失计入什么科目
  • 减值损失和减值损失区别
  • 企业应付账款的借方余额反映的是
  • 免征企业所得税的有哪些行业
  • Linux系统下Mysql使用简单教程(一)
  • window怎么样
  • Vista下jusched.exe进程与禁用
  • 注册表怎么优化
  • 怎么在ubuntu上编程
  • macbook如何登录微信
  • linux如何结束正在运行的进程
  • 在linux系统中,用来存放系统所需要的
  • nodejs nodemon
  • 在javascript中
  • nodejs获取异步请求返回值
  • js中push和pop
  • jquery 使用
  • jquery做下拉
  • js 类的继承
  • 宁波地铁支付宝可以刷吗
  • 百望税控盘电子发票发送邮箱
  • 出口运输费会计分录
  • 2022年最新最全执业药师继续教育考试答案
  • 四川地方税务局网址是什么
  • 如何落实请示汇报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设