原生js:click和onclick本质的区别

原生javascript的click在w3c里边的阐述是DOM button对象,也是html DOM click() 方法,可模拟在按钮上的一次鼠标单击。

button 对象代表 HTML 文档中的一个按钮。button元素没有默认的行为,但是必须有一个 onclick 事件句柄以便使用。

语法:buttonObject.click()

<html>
<head>
<script type="text/javascript">
function clickButton()
  {
  document.getElementById('button1').click()
  }
function alertMsg()
  {
  alert("Button 1 was clicked!")
  }
</script>
</head>
<body onload="clickButton()">

<form>
<input type="button" id="button1" onclick="alertMsg()" value="Button 1" />
</form>

</body>
</html>

 

onclick是一个事件Event对象 。支持该事件的 JavaScript 对象:button, document, checkbox, link, radio, reset, submit

HTML DOM Event 对象,代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。事件通常与函数结合使用,函数不会在事件发生前被执行!

<html>
<body>
    Field1: <input type="text" id="field1" value="Hello World!"><br />
    Field2: <input type="text" id="field2"> <br />
    点击下面的按钮,把 Field1 的内容拷贝到 Field2 中: <br />
    <button onclick="document.getElementById('field2').value=document.getElementById('field1').value">Copy Text</button>
</body>
</html>    

 

区别

前面说了click是一个方法,onclick是一个事件。

而最根本的问题是,方法和事件的区别是什么呢?

其区别在于:

  1.事件名前一般都以on开头;

  2.方法是程序员写语句直接调用,即显示调用;【可以触发onclick事件

  3.事件不需程序员调用,但是,必须由程序员写一个函数且将该函数赋值给相应的事件,其调用是在相应的事件触发时。【告诉浏览器在鼠标点击时候要做什么

所以调用顺序是:首先方法其次事件。

 可以扩展学习和参考的文章:

2.$(“”).click与onclick的区别示例介绍
地址:http://www.jb51.net/article/55650.htm

3.从零开始学习jQuery (五) jquery事件与事件对象
地址:http://www.jb51.net/article/26331.htm

4.jquery动态移除/增加onclick属性详解
地址:http://www.php100.com/html/program/jquery/2013/0905/5964.html

Event 对象

转载本人博文时请注明出处和原文地址!!!

posted @ 2017-03-15 18:15  百撕可乐  阅读(49282)  评论(4编辑  收藏  举报
版权声明:本博客原创文章使用CC3.0授权协议,署名-非商业性使用-禁止演绎。转载本博客文章须在开头位置著名原作者姓名以及原文链接,违反协议的转载将受到我本人的版权追责。