|
|
|
| такой скрипт не работает в мозиле . Подскажите пожалуйста как решить эту проблему
<body>
<span onclick="alert('da')" id="ok">ok</span>
<script type="text/javascript">
document.getElementById('ok').click();
</script>
</body> | |
|
|
|
|
|
|
|
для: guye
(02.06.2009 в 14:27)
| | http://softtime.ru/forum/read.php?id_forum=4&id_theme=65510&page=1
события можно вызывать так, только по окончанию загрузки страницы.
<body onload="document.getElementById('ok').onclick()"> | |
|
|
|
|
|
|
|
для: sl1p
(02.06.2009 в 14:40)
| | так тоже работать не будет
<body>
<span onclick="alert('da')" id="ok">ok</span>
<script type="text/javascript">
function a(){
document.getElementById('ok').click();
}
</script>
<a onclick="a()">a</a>
</body> | |
|
|
|
|
|
|
|
для: guye
(02.06.2009 в 14:27)
| | А оно и не должно работать... click() работает только для элементов форм.. (см. html стандарты)... обратное это самовольство Opera и т.п... | |
|
|
|
|
|
|
|
для: guye
(02.06.2009 в 14:27)
| | "По уму" для Mozilla надо так:
<body>
<span onclick="alert ('da')" id="ok">ok</span>
<script>
var evt = document.createEvent ('MouseEvents');
evt.initMouseEvent ('click', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
document.getElementById ('ok').dispatchEvent (evt);
</script>
</body>
|
А можно и проще - и это будет работать ВЕЗДЕ:
<body>
<span onclick="alert ('da')" id="ok">ok</span>
<script>
document.getElementById ('ok').onclick ();
</script>
</body>
|
И, как видите, "дожидаться полной загрузки страницы", как выше безосновательно
утверждается, совершенно НЕ ОБЯЗАТЕЛЬНО.
Скрипт просто уже должен знать о существовании объекта, по которому имитируется клик,
т.е. скрипт должен быть по коду НИЖЕ, чем тег самого этого объекта. | |
|
|
|
|
|
|
|
для: guye
(02.06.2009 в 14:27)
| | может уж onclick() | |
|
|
|