首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用js/原型中的特定命令触发事件(onclick)

如何用js/原型中的特定命令触发事件(onclick)
EN

Stack Overflow用户
提问于 2011-07-11 14:12:04
回答 2查看 2K关注 0票数 0

可能重复:

Trigger an event with Prototype

例如,javascript/prototype中的3个onclick事件。如何强制原型运行警报功能转储“第一!”,“第二!”然后“第三!”价值。谢谢,这是您可以用C/P编写的代码:

代码语言:javascript
复制
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.2/prototype.js"></script>
</head>
<body>
<script type="text/javascript">
//<![CDATA[
document.observe("dom:loaded", function() {
  $("go").observe("click", function() { alert('First!'); });
  $("go").observe("click", function() { alert('Third!'); });
  $("go").observe("click", function() { alert('Second!'); });
  });
//]]>
</script>
<form>
<input id="go" type="button" value="Click me!"  />
</form>
</body>
</html>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-11 14:21:13

事件处理程序是JavaScript中的函数,函数是JavaScript中的主要公民。通常,中间对象包含作为数组的所有处理程序的列表。例如,在jQuery中,data('events')保存事件处理程序。除非prototype简单明了,否则您应该手动获取所有处理程序,对它们进行排序并将它们重新分配回来。

正如@gaby所说,您可以首先使用标记中的正确顺序绑定它们。

票数 0
EN

Stack Overflow用户

发布于 2011-07-11 14:34:11

这个怎么样:

代码语言:javascript
复制
var handlers = [func1, func2, func3];
$("go").observe("click", function() { 
    var i = 0, len = handlers.length;
    for(i; i<len;i++)
       handlers[i]();
});

当然有一些改进,但这是一个普遍的想法

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6651408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档