From: Mike S. <ms...@us...> - 2007-08-22 18:36:24
|
Update of /cvsroot/wonder/Wonder/Ajax/Ajax/WebServerResources In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv19205/WebServerResources Modified Files: wonder.js Log Message: Hoverable Index: wonder.js =================================================================== RCS file: /cvsroot/wonder/Wonder/Ajax/Ajax/WebServerResources/wonder.js,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** wonder.js 13 Jul 2007 04:17:05 -0000 1.23 --- wonder.js 22 Aug 2007 18:34:27 -0000 1.24 *************** *** 378,380 **** this.__onComplete(transport); } ! }); \ No newline at end of file --- 378,432 ---- this.__onComplete(transport); } ! }); ! ! /** ! * Hoverable, adds support for "delayed onmouseout" events, so you don't ! * that obnoxious onhover behavior where it immediately unhovers when ! * you slightly mouse out of the element. ! * ! * Specify elements that receive this behavior with a .hoverable class, ! * and in CSS, your elements will become .hoverable.hover when they're ! * in the delayed hover state. ! * ! * Call Hoverable.register() in your footer to enable this feature, and ! * include behaviour.js in your page. ! */ ! var Hoverable = { ! _rules : { ! '.hoverable' : function(element) { ! element.onmouseover = function() { ! Hoverable.over(this); ! }, ! ! element.onmouseout = function() { ! Hoverable.out(this); ! } ! } ! }, ! ! over : function(element) { ! element.addClassName("hover"); ! if (element['hoverCount'] == undefined) { ! element['hoverCount'] = 0; ! } ! else { ! element['hoverCount'] ++; ! } ! }, ! ! out : function(element) { ! setTimeout(Hoverable._end.bind(element, element['hoverCount']), 300); ! }, ! ! _end : function(hoverCount) { ! var element = this; ! if (element['hoverCount'] == hoverCount) { ! element.removeClassName("hover"); ! } ! }, ! ! register : function() { ! Behaviour.register(Hoverable._rules); ! } ! } ! \ No newline at end of file |