сказали мне что не работает моя супер-навороченая яваскриптом с аяксом формочка регистрации. подумал что ничего страшного, перезагрузился в страшную и ужасную винду, около часа боролся с вирусами, вроде заработала)
загружаю IE, пытаюсь зарегистрироваться... я ожидал сообщения об ошибке, где бы он сказал строчку и позицию встроке где он спотыкается. вместо этого он мне предложил отправить отчет в микрософт, естественно после своего краха).
в результате нескольких попыток выяснилось что убивает его protoload, который я вызывал startWaiting на ячейке таблицы (td). ну ладно, обиделся, повесил крутилку на document.body, что решило первую проблему.
далее я решил навешивать onchange событие на select. все вроде хорошо, но немножко с замарочками
а именно в том что мало того что событие аттачится по-разному, так еще и называется или change или onchange
ну и когда это заработало я узнал что в IE не срабатывает добавление стиля через setAttribute('style', 'width:50%;');
в то время как работает setAttribute('id', 'myid'); а добавление стиля работает в операфоксе.
решается это просто через прототайповский addClassName (а ф-ция addClass не прототайповская а из другого пакета dom extension)
но т.к. она не родная то код
работать не будет) надо писать
ps. да, сам знаю что бред, но капельку полезного вытянуть можно =)
загружаю IE, пытаюсь зарегистрироваться... я ожидал сообщения об ошибке, где бы он сказал строчку и позицию встроке где он спотыкается. вместо этого он мне предложил отправить отчет в микрософт, естественно после своего краха).
в результате нескольких попыток выяснилось что убивает его protoload, который я вызывал startWaiting на ячейке таблицы (td). ну ладно, обиделся, повесил крутилку на document.body, что решило первую проблему.
далее я решил навешивать onchange событие на select. все вроде хорошо, но немножко с замарочками
if(window.addEventListener){ // Mozilla, Netscape, Firefox
select.addEventListener('change', myFunction, false);
} else { // IE
select.attachEvent('onchange', myFunction);
}
а именно в том что мало того что событие аттачится по-разному, так еще и называется или change или onchange
ну и когда это заработало я узнал что в IE не срабатывает добавление стиля через setAttribute('style', 'width:50%;');
в то время как работает setAttribute('id', 'myid'); а добавление стиля работает в операфоксе.
решается это просто через прототайповский addClassName (а ф-ция addClass не прототайповская а из другого пакета dom extension)
но т.к. она не родная то код
var label = document.createElement('div');
label.innerHTML = "abc" ;
label.addClassName("myCssClass");
label.setAttribute('id', 'labelID');
$('parentDiv').appendChild(label);
работать не будет) надо писать
var label = document.createElement('div');
label.innerHTML = "abc" ;
label.setAttribute('id', 'labelID');
$('parentDiv').appendChild(label);
$('labelID').addClassName("myCssClass");
ps. да, сам знаю что бред, но капельку полезного вытянуть можно =)

