Показать сообщение отдельно

  #14  
Старый 21.06.2008, 22:42
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме:
3069349

Репутация: 808


По умолчанию

Для начала:
Код:
function(msg){ alert(msg) } // это то же самое, что и просто alert
Далее. Заменяем это:
Код:
// ajaxTest("GET", e.srcElement.valueOf(), function(msg){ alert(msg) });
на это:
Код:
if(e.srcElement.href) ajax("GET", e.srcElement.href, alert);
Условие необходимо, поскольку объект, по которому щёлкнули, может быть любым из блока menu и самим menu в том числе. Вторым параметром функции, в принципе, можно передать и саму ссылку ( [ HTMLAnchorElement ] ).

А теперь немного уличной магии. В коде функции ajax:
Код:
function ajax(method, url, userFunc) {

window.xmlHttp.onreadystatechange=function() {
	if(window.xmlHttp.readyState==4)
		userFunc(window.xmlHttp.responseText);
}

window.xmlHttp.open(method,url,true);
window.xmlHttp.send(null);
}
нужно поменять местами определение [ object XMLHttpRequest ].onreadystatechange и вызов метода open()

P.S. Все рекомендации основаны на следующем правиле: переписывать код полностью нельзя.
 
Ответить с цитированием