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, время: 17:16. |