使用原型触发事件
回答
event.simulate.js
符合您的需求。
我已经使用了这几次,它的作品就像一个魅力。它可以让你手动触发本地事件,如点击或悬停,像这样:
$('foo').simulate('click');
关于这个伟大的事情是,所有连接的事件处理程序仍然会执行,就像你会点击元素你自己。
对于定制事件您可以使用标准原型方法Event.fire()
。
正是我在找什么,非常感谢 – 2009-01-20 10:49:28
Freakin'辉煌!这帮了我很多。谢谢:) – CalebHC 2009-12-29 04:45:55
我不认为这是一个内置于原型,但你可以使用这个(未经测试,但至少应该让你在正确的方向):
Element.prototype.triggerEvent = function(eventName)
{
if (document.createEvent)
{
var evt = document.createEvent('HTMLEvents');
evt.initEvent(eventName, true, true);
return this.dispatchEvent(evt);
}
if (this.fireEvent)
return this.fireEvent('on' + eventName);
}
$('foo').triggerEvent('mouseover');
我发现这个职位有帮助。 .. http://jehiah.cz/archive/firing-javascript-events-properly
它涵盖了一种在Firefox和IE中触发事件的方法。
function fireEvent(element,event){
if (document.createEventObject){
// dispatch for IE
var evt = document.createEventObject();
return element.fireEvent('on'+event,evt)
}
else{
// dispatch for firefox + others
var evt = document.createEvent("HTMLEvents");
evt.initEvent(event, true, true); // event type,bubbling,cancelable
return !element.dispatchEvent(evt);
}
}
的答案在这里是“正常”事件属实,那是一个由用户代理定义的事件,但对于自定义事件,你应该使用原型的“火”的方法。例如
$('something').observe('my:custom', function() { alert('Custom'); });
.
.
$('something').fire('my:custom'); // This will cause the alert to display
- 1. 原型 - 触发每个onchange事件
- 2. 使用WPF事件触发事件
- 3. 如何在另一个完成后触发原型事件?
- 4. 使用事件触发消耗OSX鼠标/触控板事件
- 5. 触发事件
- 6. 触发事件
- 7. 触发事件
- 8. 触发事件
- 9. 触发事件
- 10. 触发事件
- 11. 区分用户触发事件和代码触发事件
- 12. 使用原始TCP发送Kaa事件
- 13. 基于模型事件触发jQuery的
- 14. laravel模型$事件没有被触发
- 15. 骨干模型事件没有触发
- 16. 在Kaa中使用Webapp触发事件
- 17. 使用dojo触发mouseover事件?
- 18. 在CSS上使用jquery触发事件?
- 19. 如何使用jquery事件触发window.fbAsyncInit
- 20. jQuery,使用多个事件触发器?
- 21. 使用普通HTML触发serverside事件?
- 22. 两个docready()事件使用jQuery.tabs()触发;
- 23. 使用javascript在asp.net中触发事件
- 24. 使用jquery点击事件触发AJAX
- 25. 使用中点击触发onclick事件
- 26. 如何使用Xcode触发事件?
- 27. 使用jQuery live或delegate触发事件
- 28. 使用jQuery创建/触发事件
- 29. 使用iphone触发Mac上的事件
- 30. 事件触发后,使用Ruby变量
看看我的答案。在原型中有一个支持... – 2010-09-14 11:43:36