Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Запрет переопределения onclick (https://javascript.ru/forum/events/14431-zapret-pereopredeleniya-onclick.html)

mmfStudent 16.01.2011 16:24

Запрет переопределения onclick
 
Ситуация такая. Есть кнопка с базовым функционлом, страница состоит из деномически загружаемых частей. При первой загрузке мы меняем её событие онклик на нужное. Затем если пользователь изменит поле на форме то произайдет частичная перезагрузка страницы и: перезагрузится кнопка (получит базовый функционал), перезагрузится наш скрипт (запишет нужный функционал) и затем отработает некий скрипт, который повесит другой функционал на кнопку (видимо он отрабоатывает на какой-нибудь онкомплит). Вопрос в том, можно ли запретить переопределить элементу онклик поле того как мы записали свой функционал или гарантировать вызов нашего скрипта после отработик 3ей ситуации? Приложение большое и собирается из большого количества частей, поэтому нет возможности исправить базовые скрипты и функциональность.

Aetae 16.01.2011 17:24

Юзать addevent.
Запретить вы ничего никому не можете.

mmfStudent 16.01.2011 17:42

Цитата:

Сообщение от Aetae (Сообщение 88216)
Юзать addevent.
Запретить вы ничего никому не можете.

Возникла такая проблема. addevent почему-то не работает для body и события onload.
Так же не срабатывает такая функция :(
function addLoadEvent(func) {
                var oldonload = document.body.onload;
                if (typeof document.body.onload != 'function') {
                    document.body.onload = func;
                } else {
                    document.body.onload = function() {
                        if (oldonload) {
                            oldonload();
                        }
                        func();
                    }
                }
            }

Aetae 16.01.2011 17:58

window.onload
?

mmfStudent 17.01.2011 12:28

Проблема в том, что window.onload не наступает после ajax запроса. Чем черевато если я замену онклик буду делать в функции setInerval и затем не делать clear?

Aetae 17.01.2011 14:57

Запуском over9000 одинаковых интервалов.
interval=setInetreval(a,b);
//....
interval&&clearInterval(interval) // == if(interval)clearInterval(interval)


А вообще задача у вас из тех, что никогда не возникнут в приличных проектах.


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