Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.05.2011, 13:30
Аватар для simple
Профессор
Отправить личное сообщение для simple Посмотреть профиль Найти все сообщения от simple
 
Регистрация: 23.09.2010
Сообщений: 247

Событие onclick для IE
Здравствуйте, подскажите как динамически создать событие onclick для браузера IE. Например в гугла хром пишу код:
tr=table.insertRow(-1);
tr.setAttribute=('onclick','alert("Привет мир!")');

Он выполняется, а вот в IE не хочет работать, ошибки не выдает но и не работает.Почему так кто занет?

Последний раз редактировалось simple, 01.05.2011 в 14:48.
Ответить с цитированием
  #2 (permalink)  
Старый 01.05.2011, 14:09
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от simple
Например в гугла хром пишу код
Сообщение от simple
Он выполняется
значит этот браузер нужно сжечь на костре, без возможности восстановления.
Сообщение от simple
как динамически создать событие onclick
для размышления
<div id="div">
    <a href="#">click1</a>
    <a href="#">click2</a>
</div>
<script type="text/javascript">
var div = document.getElementById('div').children, i = div.length;
while(i--) {
    div[i].onclick = function(i) {
        return function() {
            if(this.nodeName == 'A') {
                this.innerHTML = i;
            }
        };
    }(i);
}
</script>

Атрибуты и свойства

Последний раз редактировалось monolithed, 01.05.2011 в 14:27.
Ответить с цитированием
  #3 (permalink)  
Старый 01.05.2011, 14:12
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

http://javascript.ru/tutorial/dom/attributes
Ответить с цитированием
  #4 (permalink)  
Старый 01.05.2011, 15:01
Аватар для simple
Профессор
Отправить личное сообщение для simple Посмотреть профиль Найти все сообщения от simple
 
Регистрация: 23.09.2010
Сообщений: 247

ну почитав ваши ссылки сделал вот так:
tr.setAttribute('onclick',newFunction('alert("Привет мир!")'))

Теперь работает в IE, но не работает в гугле.
Запарили меня эти разработчики браузеров своими браузерами, неужели нельзя делать браузеры под единый стандарт???
Ответить с цитированием
  #5 (permalink)  
Старый 01.05.2011, 16:00
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от simple
ну почитав ваши ссылки сделал вот так:
tr.setAttribute('onclick',newFunction('alert("Привет мир!")'))
вы опять сделали все неправильно, прочтите еще раз
Ответить с цитированием
  #6 (permalink)  
Старый 01.05.2011, 21:50
Аватар для simple
Профессор
Отправить личное сообщение для simple Посмотреть профиль Найти все сообщения от simple
 
Регистрация: 23.09.2010
Сообщений: 247

не догоняю я пока все эти фишки, сделал чуть по другому:
tr.setAttribute('onclick',function(){alert("Привет мир!")});

Так же не работает в гугле, а в IE работает. Подскажите кто знает кроссбраузерный способ создания событий, пожалуйста.
Ответить с цитированием
  #7 (permalink)  
Старый 01.05.2011, 22:40
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Забудьте про setAttribute, что вы к нему привязались.

Неужели так трудно на этом же сайте посмотреть список статей?
Ответить с цитированием
  #8 (permalink)  
Старый 01.05.2011, 23:04
Аватар для simple
Профессор
Отправить личное сообщение для simple Посмотреть профиль Найти все сообщения от simple
 
Регистрация: 23.09.2010
Сообщений: 247

Вот спасибо дружище, решение было оказывается под носом

Последний раз редактировалось simple, 02.05.2011 в 01:44.
Ответить с цитированием
  #9 (permalink)  
Старый 02.05.2011, 16:17
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от monolithed
значит этот браузер нужно сжечь на костре, без возможности восстановления.
Не согласен. Чёткой регламентации, должен ли выполнять обработчик, добавленный через setAttribute, нет. В огнелисе тоже работает. Самый простой способ добавить обработчик - obj.onclick=function(){/* код */}.

И незачем было сразу человека замыканиями грузить))
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
событие для объекта Д-3210 Общие вопросы Javascript 4 15.12.2010 10:31
событие onclick chelsea Общие вопросы Javascript 1 17.09.2010 11:31
Событие onClick при нажатии пункта меню Lex4e Общие вопросы Javascript 1 25.06.2010 18:31
Событие onClick avtor01 Events/DOM/Window 3 03.09.2009 18:01
Для события onCLick получить индекс строки и объект грида. progi2007 ExtJS 4 05.08.2009 11:31