问题解决:在js中绑定onclick事件为什么不加括号,在html代码中必须要加?(转载)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div>
<button id="btn">按钮</button>
</div>
<script>
var btn = document.getElementById("btn");
btn.onclick = demo();
//btn.onclick = demo; /*加上括号是执行的意思,添加事件的回调函数应该就是给相应的事件属性赋值,
而很明显需要把一个函数赋值给这个事件属性,而不是函数的调用结果。
所以在js中的绑定是直接赋值。而在标签内的事件属性的值是由引号包裹的,
代表的是当点击该元素时,执行引号内的代码,直接把引号内的代码拿出来跑,
如果你不加括号,那就不会调用那个函数。*/ /*简单来说就是带括号的是执行一次函数,不带括号的函数就是一个函数对象*/
/*那下面这种意思就明显了,下面的这一句语句是将一个函数对象赋值给了btn.onclick
*/ // btn.onclick = function(){alert("DOM0级事件处理111");} function demo(){
alert("111");
} </script>
</body>
</html>
搬运转载自回答:https://www.imooc.com/wenda/detail/323633
(本文对读者有帮助的话请移步支持原作者)
问题解决:在js中绑定onclick事件为什么不加括号,在html代码中必须要加?(转载)的更多相关文章
- 在js中绑定onclick事件为什么不加括号,在html代码中必须要加?
		
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
 - 在js中拼接<a>标签,<a>标签中含有onclick事件,点击无法触发该事件
		
我们在<a>标签中添加事件一般是onclick="editUser()" 这样添加,在html页面上是行的通的 但是如何你是在js中拼接<a>标签并在< ...
 - JS中的onclick事件
		
原文链接:https://segmentfault.com/q/1010000007955542?_ea=1503986 我自己做了一下测试. 这个是在html里面直接绑定onclick事件,我打印了 ...
 - JS里的onclick事件
		
可以通过以下代码了解JS里的onclick事件: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml&quo ...
 - Android:后台给button绑定onClick事件、当返回项目到手机页面时提示是否退出APP
		
上一篇文章我们学习了android通过findViewById的方式查找控件,本章将了解button控件,及btton如何绑定控件. 通过android的ui设计工具设计一个登录页面: <Rel ...
 - @有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不
		
@有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中 2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不加@那么需要用一些转义符\来显示一些特 ...
 - js click 与 onclick   事件绑定,触发与解绑
		
click 与 onclick 1.onclick 事件会在对象被点击时发生. <input id="btn1" type="button" onclic ...
 - HTML中在a标签中添加onclick事件
		
1.链接的onclick 事件被先执行,其次是href属性下的动作; 2.假设链接中同时存在href 与onclick,如果想让href 属性下的动作不执行,onclick 必须得到一个false的返 ...
 - js给对象onclick事件赋值
		
1)当方法没有参数时,赋值可以直接用onclick = 方法名 window.onload = function() { $('btnTest').onclick = test; } function ...
 
随机推荐
- mongdb 使用聚合函数异常
			
异常信息: Command execution failed: Error [The 'cursor' option is required, except for aggregate with t ...
 - php面向对象的初认识
			
面向对象的基本概念 面向对象的三大特征:继承 封装 多态 类和对象: 类是一个抽象的概念 对象是一个具体的实例 张三是一个对象,李四也是一个对象.王五同样是一个对象..... 他们都隶属于“人”这个“ ...
 - 11_数据降维PCA
			
1.sklearn降维API:sklearn. decomposition 2.PCA是什么:主成分分析 本质:PCA是一种分析.简化数据集的技术. 目的:是数据维数压缩,尽可能降低原数据的维数(复杂 ...
 - vue报错 error: data.push is not a function
			
data定义出错,data需定义为一个数组 => data : [ ]
 - kafka comsumer
			
kafka的顺序消费只保证在同一个partition中而已
 - [编织消息框架][netty源码分析]11 ByteBuf 实现类UnpooledHeapByteBuf职责与实现
			
每种ByteBuf都有相应的分配器ByteBufAllocator,类似工厂模式.我们先学习UnpooledHeapByteBuf与其对应的分配器UnpooledByteBufAllocator 如何 ...
 - 子类A继承父类B, A a = new A(); 则父类B构造函数、父类B静态代码块、父类B非静态代码块、子类A构造函数、子类A静态代码块、子类A非静态代码块 执行的先后顺序是
			
按照先后顺序: 1,静态先于非静态代码库执行(静态代码块随着类的加载而加载,初始化只执行一次) 2,父类先于子类 3,非静态代码块优于构造函数执行 所以执行顺序如下: 父类B静态代码块->子类A ...
 - PLSQL直接通过客户端连接远程
 - java 用户注册登陆Demo
			
一个用户注册登陆的系统,用到了MD5加密处理密码,实现了一个简单的数据库连接池connectionPool, 实现了注册,登陆,登陆之后修改用户信息等功能,非常适合初学者 一.准备工作 数据库:MyS ...
 - springmvc 串口读写 基于win7使用txrx netbeans jdk1.8 maven的
			
引入 <dependency> <groupId>org.rxtx</groupId> <artifactId>rxtx</artifactId& ...