You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by kn...@apache.org on 2007/11/28 00:08:43 UTC
svn commit: r598811 -
/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/wicket-event.js
Author: knopp
Date: Tue Nov 27 15:08:41 2007
New Revision: 598811
URL: http://svn.apache.org/viewvc?rev=598811&view=rev
Log:
WICKET-1186
Modified:
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/wicket-event.js
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/wicket-event.js
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/wicket-event.js?rev=598811&r1=598810&r2=598811&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/wicket-event.js (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/wicket-event.js Tue Nov 27 15:08:41 2007
@@ -91,6 +91,26 @@
*/
Wicket.Event = {
+ idCounter: 0,
+
+ getId: function(element) {
+ var current = element.getAttribute("id");
+ if (typeof(current) == "string" && current.length > 0) {
+ return current;
+ } else {
+ current = "wicket-generated-id-" + Wicket.Event.idCounter++;
+ element.setAttribute("id", current);
+ return current;
+ }
+ },
+
+ handler: function() {
+ var id = this[0];
+ var original = this[1];
+ var element = Wicket.$(id);
+ original.bind(element)();
+ },
+
// adds an event of specified type to the element
// also supports the domready event on window
// domready is event fired when the DOM is complete, but before loading external resources (images, ...)
@@ -102,7 +122,7 @@
if (element.addEventListener){
element.addEventListener((type == 'mousewheel' && window.gecko) ? 'DOMMouseScroll' : type, fn, false);
} else {
- fn = fn.bind(element);
+ fn = Wicket.Event.handler.bind([Wicket.Event.getId(element), fn]);
// Because of the fn.bind (returning a new function object)
// you can't detach the event first to be sure that there are no doubles :(
//element.detachEvent('on'+type, fn);