Cannot read property 'style' of null
Здравствуйте! Вашему вниманию код, который работал до того момента как я решил добавить кое-какие скрипты, которые затем удалил. Казалось бы, вернул все как есть, но сейчас код не работает:
TypeError: Cannot read property 'style' of null [http://magascity.ru/index.php/plan:179] TypeError: Cannot read property 'style' of null [http://magascity.ru/index.php/plan:188] TypeError: Cannot read property 'style' of null [http://magascity.ru/index.php/plan:179] TypeError: Cannot read property 'style' of null [http://magascity.ru/index.php/plan:188] По идее, при наведении указателя на map area должен был показываться div с классом .tootlip (onmouseover="showLayer('link1')) Что-то здесь не-так, ведь раньше код работал. Пытался разобраться самостоятельно, но никак не могу найти причину! <script language="JavaScript1.2"> <!-- var ie = document.all ? 1 : 0; var ns = document.layers ? 1 : 0; var topcss = 165; if (ns) topcss = 200; function showLayer(name) { if (ie) document.all[name].style.visibility = "visible"; else if (ns) document.layers[name].visibility = "show"; else document.getElementById(name).style.visibility = "visible"; } function hideLayer(name) { if (ie) document.all[name].style.visibility = "hidden"; else if (ns) document.layers[name].visibility = "hide"; else document.getElementById(name).style.visibility = "hidden"; } //--> </script> Для наглядности:http://jsfiddle.net/TcgH9/8/ |
Цитата:
http://learn.javascript.ru/ Цитата:
Цитата:
Цитата:
ReferenceError: hideLayer is not defined ReferenceError: showLayer is not defined ReferenceError: hideLayer is not defined ReferenceError: showLayer is not defined ReferenceError: hideLayer is not defined ReferenceError: showLayer is not defined ReferenceError: showLayer is not defined ReferenceError: hideLayer is not defined .... и это три |
Спасибо за книжку, но пока у меня нет времени изучать ее. В яве я ноль, а сие решение нашел на одном форуме. Правда не смотрел какого года сообщение))
Но дело в том, что код у меня работал сегодня утром. Хотелось бы понять, почему сейчас не работает |
Цитата:
|
Цитата:
Цитата:
|
Спасибо. Появится время, буду учить javascript
|
Тогда:
Цитата:
function showLayer(id){ document.getElementById(id).style.visibility = "visible"; } function hideLayer(id){ document.getElementById(id).style.visibility = "hidden" } Здорово конечно передавать класс и в функции обрабатывать его как id: <div </div> <p> <map id="genPlan" name="genPlan"> <area shape="poly" coords="195,2,9,4,56,114,90,235,92,238,133,239,133 ,152,137,157,141,154,145,155,146,154,153,155,173,1 39,176,131,176,127,177,113,178,118,182,118,187,119 ,195,116,197,117,197,4" href="#" onmouseover="showLayer('link1');" onmouseout="hideLayer('link1');"> |
Это вы верно заметили. Но проблема осталась
|
Цитата:
|
Часовой пояс GMT +3, время: 01:28. |