Не работает onclick в opera и ie
Здрасьте, имеется вот такой код...
function click(id){ for (i=5;i<9;i++){ if (i==id){ document.getElementById('cat-'+id).style.display = 'block'; } else { document.getElementById('cat-'+i).style.display = 'none'; } } } function change(id,src){ document.getElementById(id).src = src; } И к примеру обрабатываем... <img src="" class="catimg" onmouseout="change(5,'5.jpg');" onmouseover="change(5,'5-on.jpg');" onclick="click('5');" id="5"> <div class="category_index" id="cat-5" style="display: none;"> Hello! 5 </div> <div class="category_index" id="cat-6" style="display: none;"> Hello! 6 </div> <div class="category_index" id="cat-7" style="display: none;"> Hello! 7 </div> <div class="category_index" id="cat-8" style="display: none;"> Hello! 8 </div> В фф код работает прекрасно, в ие и опере не срабатывает onclick, почему? |
Потому что не нужно называть функции "click".
А еще, id не должно начинаться с цифры или быть ею. |
И еще, цикл - не самое элегантное решение. Можно же, например, сделать переменную, в которой хранится предыдущее значение. И то симпатишнее:
<div onclick="clicking(5);">Show "Hello"</div> <div onclick="clicking(6);">Show "Bye"</div> <div id="cat-5" style="display: none;"> Hello! </div> <div id="cat-6" style="display: none;"> Bye! </div> <script> function clicking(id){ if (clicking.lastValue) document.getElementById('cat-'+clicking.lastValue).style.display = 'none'; document.getElementById('cat-'+id).style.display = 'block'; clicking.lastValue = id; }; clicking.lastValue = null; </script> |
немного исправил...
function clicking(id){ for (i=5;i<9;i++){ if ('c-'+i==id){ document.getElementById('cat-'+i).style.display = 'block'; } else { document.getElementById('cat-'+i).style.display = 'none'; } } } <img alt="Напольные вазы" src="" class="catimg" onmouseout="change('c-5','/5.jpg');" onmouseover="change('c-5','/5-on.jpg');" onclick="clicking('c-5');" id="c-5"> Результат тот-же. З.Ы по вашему варианту тоже самое, но спасибо, учту =) З.Ы.Ы прошу прощения, на винде заработало на лине у меня почему-то нет =) |
почти та же проблема
в IE не работает вместе onClick и onmouseover на странице
http://litka-2000.narod.ru//tai/tai.html Подскажите, пожалуйста, как исправить. |
Часовой пояс GMT +3, время: 17:14. |