Проблемы с onclick
Здравствуйте, ответьте, пожалуйста, на вопрос.
Почему не работает onclick? html страницы: <!DOCTYPE html> <html> <head> <title>Onclick</title> </head> <body> </body> </html> js-код, который будет воспроизводить GreaseMonkey: document.getElementsByTagName('body')[0].innerHTML='<div></div>'; document.getElementsByTagName('body')[0].getElementsByTagName('div')[0].innerHTML='<div></div>'; document.getElementsByTagName('body')[0].getElementsByTagName('div')[0].getElementsByTagName('div')[0].innerHTML='<a>Click</a>'; document.getElementsByTagName('body')[0].getElementsByTagName('div')[0].getElementsByTagName('div')[0].getElementsByTagName('a')[0].onclick=function() {document.getElementsByTagName('a')[0].innerHTML+='!';} Заранее спасибо. |
В GreaseMonkey запрещено добавление обработчика через свойство
x.onclick = function(){}. Вместо этого нужно использовать x.addEventListener('click', function(){}, false) P.S. document.getElementsByTagName('body')[0].innerHTML='<div><div><a>Click</a></div></div>'; |
Цитата:
document.getElementsByClassName('main')[0].innerHTML+='<div class="line"></div><div id="script_foot"><a href="javascript://">Настройки</a></div>'; document.getElementById('script_foot').getElementsByTagName('a')[0].onclick=function(){script_option();window.scrollTo(0,0);} Цитата:
Меня больше интересует почему в одних случаях событие срабатывает, а в других нет? |
Неужели ответа не будет?(
|
Я тебе уже ответил. Onclick и не должен работать. Почему работает во втором случае - другой вопрос.
|
Aetae,
addEventListener так же не работает. |
Nexus,
Имхо на скок помню проблемными были общения именно с тегами <a> какая то одна из моих закладок http://softlakecity.ru/browsers/firefox/greasemonkey - может что полезно... |
Deff,
менял "<a></a>" на "<z></z>", "<span></span>" и т.п., ничего не вышло, событие не происходит. |
Nexus,
А поясните задачу... мож иными средствами можно проще решить? |
Deff, Мне нужно сделать "настройки скрипта".
На странице скриптом создается ссылка и блок: <a href="javascript://" id="option_open">Option</a> <div style="display:none;" class="script_block"> <div class="script_block_head"> <div class="script_block_head_title"></div> <div class="script_block_head_close">Х</div> </div> <div class="script_block_body"></div> </div> Клик по #option_open, должен вызвать функцию, которая заполнит .script_block и поменяет его \'display\' на \'\'. Функция заполняет .script_block_body этим: <div class="script_block_body"> <div class="script_module_setting"> <span class="script_tooltip">?</span> <!-- тут написано, что произвойдет при клике по одной из ссылок //--> <div> <a href="javascript://">1</a> <!-- При клике по ссылке, значение переменной, описанной в скрипте, должно измениться, что изменит поведения скрипта //--> <a href="javascript://">2</a> <a href="javascript://">3</a> </div> </div> <div class="script_module_setting"></div> <div class="script_module_setting"></div> </div> |
Часовой пояс GMT +3, время: 23:59. |