繁体   English   中英

javascript 事件处理

[英]javascript event handling

我有一个查询。 我曾经以两种方式在 javascript 事件上调用 function。

  1. 在 HTML 标签内,如:

     <div id='someid' onmouseover='callFunc()'>Some Text</div>
  2. 脚本标签/外部文件中的外部标签:

     document.getElementById('someid').onmouseover=function(){ alert('hi'); }

现在我认为两者都有相同的目的,那么这两种方式有什么区别吗? 哪一个更好? 两者的优缺点是什么? 二、有没有其他方法可以调用这个function?

两者都很糟糕。 你想要addEventListener jQuery这样的库将使这更容易,如下所示:

$('#someid').mouseover(function() { alert('hi') });

将 JavaScript 内联到 HTML 绝不是一个好主意; 它很难编写(你必须担心转义)并且很难维护。

直接分配给on*是可以的,但是对于同一个元素上的同一个事件,你不能有多个事件处理程序。 如果其他代码稍后尝试添加处理程序,它将清除您的处理程序。

最好将您的代码与html分开。

当您的所有代码都很好地组织在一个部分或单独的文件中时,维护您的代码会容易得多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM