From 407aa2ff5d56859fcd1f47b85b4c4180d035c428 Mon Sep 17 00:00:00 2001 From: wei <> Date: Sat, 21 Jan 2006 02:07:59 +0000 Subject: Fixed DefaultButton and TLinkButton --- framework/Web/Javascripts/extended/event.js | 33 ++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) (limited to 'framework/Web/Javascripts/extended/event.js') diff --git a/framework/Web/Javascripts/extended/event.js b/framework/Web/Javascripts/extended/event.js index a7514cda..b6dccf3b 100644 --- a/framework/Web/Javascripts/extended/event.js +++ b/framework/Web/Javascripts/extended/event.js @@ -26,12 +26,39 @@ Object.extend(Event, { return e.keyCode != null ? e.keyCode : e.charCode }, + isHTMLEvent : function(type) + { + var events = ['abort', 'blur', 'change', 'error', 'focus', 'load', 'reset', 'resize', 'scroll', 'select', 'submit', 'unload']; + return events.include(type); + }, + + isMouseEvent : function(type) + { + var events = ['click', 'mousedown', 'mousemove', 'mouseout', 'mouseover', 'mouseup']; + return events.include(type); + }, + fireEvent : function(element,type) { if(document.createEvent) - { - var event = document.createEvent('HTMLEvents'); - event.initEvent(type, true, true); + { + if(Event.isHTMLEvent(type)) + { + var event = document.createEvent('HTMLEvents'); + event.initEvent(type, true, true); + } + else if(Event.isMouseEvent(type)) + { + var event = document.createEvent('MouseEvents'); + event.initMouseEvent(type,true,true, + document.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null); + } + else + { + if(Logger) + Logger.error("undefined event", type); + return; + } element.dispatchEvent(event); } else if(element.fireEvent) -- cgit v1.2.3