this is a more complete _FindDlr: function _FindDlr(oElm, oLayers) { var i, k, oRet; if (!oLayers) oLayers = document.layers; if (oElm.form) { for (i=0; i<oLayers.length; i++) { for (k=0; k<oLayers[i].document.forms.length; k++) { if (oLayers[i].document.forms[k]==oElm.form) { // it could be optimized! oRet = oLayers[i].lyrobj; break; } } if (!oRet && oLayers[i].document.layers.length > 0) oRet = _FindDlr(oElm, oLayers[i].document.layers); if (oRet) break; } } return oRet; } Andreas -----Original Message----- From: GORTSILAS ANDREAS Sent: Tuesday, March 06, 2001 3:24 PM To: Dynapi-Dev mailing list (E-mail) Subject: EventMethod fix... In DynLayer.prototype.EventMethod (events.js) the code: for(;!realsrc.lyrobj && realsrc.parentElement && realsrc.parentElement!=realsrc;realsrc=realsrc.parentElement); src=realsrc.lyrobj||dyndoc; must be replaced by: var src; if (is.ie) { for(;!realsrc.lyrobj && realsrc.parentElement && realsrc.parentElement!=realsrc;realsrc=realsrc.parentElement); src=realsrc.lyrobj||dyndoc; } else if (is.ns && !realsrc.lyrobj) src = _FindDlr(realsrc); and ... function _FindDlr(oElm) { var i, k, oRet; if (oElm.form) { for (i=0; i<document.layers.length; i++) { for (k=0; k<document.layers[i].document.forms.length; k++) { if (document.layers[i].document.forms[i]==oElm.form) { oRet = document.layers[i].lyrobj; break; } } if (oRet) break; } } return oRet; } In NS the event of an html element was not forwarded to the DynLayer which contains it... Please make any corrections (if necessary) and include-it with the official code Andreas Gortsilas _______________________________________________ Dynapi-Dev mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/dynapi-dev