Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   кроссбраузерное добавление обработчика событий элементу (https://javascript.ru/forum/events/1851-krossbrauzernoe-dobavlenie-obrabotchika-sobytijj-ehlementu.html)

krinart 24.09.2008 23:56

кроссбраузерное добавление обработчика событий элементу
 
есть такой код
function addHandler(object, event, handler, useCapture) 
{ 
    if (object.addEventListener) 
	{   
		
		object.addEventListener(event, handler, useCapture ? useCapture : false); 		
    } else if (object.attachEvent) 
		{ 
			object.attachEvent('on' + event, handler); 
		} else 
			alert("Add handler is not supported"); 
}


вызывается например
addHandler($('div1'), 'mouseMove', myFunc);


работает только в опере.. ни мозилла ни ие ни хром вобще никак не реагируют на него

и даже prototype'овская observe также только для оперы
$('div1').observe('mouseMove', myFunc);


я уже всю голову сломал(( подскажите, в чём моя ошибка??

Octane 25.09.2008 00:44

addHandler($('div1'), 'mousemove', myFunc);


События строчными буквами

krinart 27.09.2008 00:57

Octane,
спасибо большое... исправил, всё работает.

тогда ещё один вопрос по поводу кроссбраузерности

почему при использовании HtmlHttpRequest, когда приходит ответ в формате xml, не хочет работать следующий код в IE?
function readResponseXML(response)
{	
	var response= response.responseXML;	
	
	var action= response.getElementsByTagName('action')[0].childNodes[0].nodeValue;	
	...
}


сразу уточню, Content-Type= text/xml

ошибка возникает во второй строке при вызове функции getElementsByTagName()

magistr_bender 29.09.2008 20:33

может я чтото непонимаю? но такого тага как action помоиму несуществует
хотя я не спец в этом вопросе... может тут имеетсяввиду не хтмл таги)

Андрей Параничев 29.09.2008 20:48

magistr_bender,
Это XML, а не HTML.

krinart 30.09.2008 04:38

да, это xml.. но вот почему ie не хочет его обрабатывать?


Часовой пояс GMT +3, время: 23:47.