Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: mozilla негде не работает click() кроме(button,input)
 
 автор: guye   (02.06.2009 в 14:27)   письмо автору
 
 

такой скрипт не работает в мозиле . Подскажите пожалуйста как решить эту проблему
<body>
<span onclick="alert('da')" id="ok">ok</span>
<script type="text/javascript">
document.getElementById('ok').click();
</script>
</body>

  Ответить  
 
 автор: sl1p   (02.06.2009 в 14:40)   письмо автору
 
   для: 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()">

  Ответить  
 
 автор: guye   (02.06.2009 в 14:54)   письмо автору
 
   для: 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>

  Ответить  
 
 автор: Yuri   (02.06.2009 в 15:17)   письмо автору
 
   для: guye   (02.06.2009 в 14:27)
 

А оно и не должно работать... click() работает только для элементов форм.. (см. html стандарты)... обратное это самовольство Opera и т.п...

  Ответить  
 
 автор: PAT   (02.06.2009 в 18:09)   письмо автору
 
   для: 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>

И, как видите, "дожидаться полной загрузки страницы", как выше безосновательно
утверждается, совершенно НЕ ОБЯЗАТЕЛЬНО.
Скрипт просто уже должен знать о существовании объекта, по которому имитируется клик,
т.е. скрипт должен быть по коду НИЖЕ, чем тег самого этого объекта.

  Ответить  
 
 автор: mihdan   (06.06.2009 в 00:11)   письмо автору
 
   для: guye   (02.06.2009 в 14:27)
 

может уж onclick()

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования