Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > изменить <table> на <a> в скрипте show/hide


Автор: ziplip 11.7.2009, 20:03
есть скрипт, который открывает и закрывает блок с информацией, но вывод в html сделан таблицей.
Код

<script language = "JavaScript">
function hide_it(idd){
var object = document.getElementById(idd);
for (var c=0; c<object.rows[0].cells.length; c++) {
object.rows[0].cells[c].className='off';
var element=object.rows[0].cells[c].id.split("_")[0];
document.getElementById(element).style.display='none';
}    
}
function marker(_this){
var elem=_this.id.split("_")[0];
if (_this.className=='') hide_it('mn_menu');
else{
if (_this.className=='on') hide_it('mn_menu');
else {
var elem=_this.id.split("_")[0];
hide_it('mn_menu');
_this.className='on';
document.getElementById(elem).style.display='block';                
}
}
}
</script>


вывод в html идёт через table-tr-td, а нужно через div-a
Код

<table id="mn_menu">
  <tr>
    <td id="php_cmmnd" onClick="marker(this)">PHP</td>
    <td id="perl_cmmnd" onClick="marker(this)">Perl</td>
  </tr>
</table>

<div id="php" style="display:none;">
  <p>лалала php</p>
</div>

<div id="perl" style="display:none;">
  <p>лалала perl</p>
</div>


так нужно
Код

<div id="mn_menu">
  <a id="php_cmmnd" onClick="marker(this)">PHP</a>
  <a id="perl_cmmnd" onClick="marker(this)">Perl</a>
</div>

после смены скрипт больше не работает.

буду очень благодарен за помощь.

Автор: bars80080 11.7.2009, 22:33
ёпрст, так функция работает со строками и ячейками. там её полностью надо переписывать

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)