These days, the best approach is to adopt a library such as Prototype or jQuery that's already solved these problems for you. Though very different in approach, each of these libraries already takes care of cross-browser differences, especially in the most problematic areas of event handling and Ajax requests.
jQuery has very prolific user community that produce lots and lots of useful plugins.
jQuery uses the Wrapper pattern to select one or more DOM elements (using CSS selector syntax). The wrapper possesses the methods used to manipulate the wrapped elements. For example, to hide all <img> elements:
Find out more about jQuery here. If you are interested in my book on jQuery, click on the "Books by Bear" link in my sig. [ April 14, 2008: Message edited by: Bear Bibeault ]