> i try my best but now i give up, so finaly im asking again, > var oS = { > cE.addEvent(sC, 'click', cE.aListener); Does this mean you have different main objects? one called cE and one oS? Or are you nesting them? Cryptic names like those confuse matters easily. I've put together a heavily commented example of stopping the default behaviour of a link: http://icant.co.uk/sandbox/DOM2noreturn.html Hope that helps. If you can wait a bit, there'll be a lead article by me on sitepoint soon talking about the transition from DHTML to DOM scripting. If you can wait even more, pre-order my book that I am desperately trying to finish right now: http://www.amazon.com/exec/obidos/ASIN/1590596803/onlinetoolsorg/103-1380453-3336648 HTH Chris -- Chris Heilmann Blog: http://www.wait-till-i.com Writing: http://icant.co.uk/ Binaries: http://www.onlinetools.org/