(function(){
	var addListener = function(obj, eventName, handler){
		var ret, func;
		try{
			func = function(evt){
				ret = handler.call(obj, evt);
				if(ret === false){
					evt.preventDefault();
				}
			};
			obj.addEventListener(eventName, func, false);
			
			window.addEventListener("unload", function(){
				obj.removeEventListener(eventName, func, false);
				obj = func = null;
			}, false);
		}catch(err){
			func = function(evt){
				evt = evt || window.event;
				ret = handler.call(obj, evt);
				if(ret === false){
					evt.returnValue = false;
				}
			};
			obj.attachEvent("on"+eventName, func);
			window.attachEvent("onunload", function(){
				obj.detachEvent("on"+eventName, func);
				obj = func = null;
			});
		}
	};
	var openExWin = function(){
		//var win = window.parent || window;
		var win = window;
		var newWin = win.open(this.href, "newWin", "scrollbars=yes,menubar=yes,toolbar=yes,location=yes,resizable=yes");
		newWin.focus();
		return false;
	};
	var aTags = document.getElementsByTagName("a");
	for(var i=0, len=aTags.length; i<len; i++){
		addListener(aTags[i], "click", openExWin);
	}
	aTags = null;
})();