Ekaterina
Новичок
JQuery: Можно ли отображать по клику различные строки таблицы
Есть меню, состоящее из двух таблиц. По клику по строке из первой таблице, должна отображаться одна из строк второй таблицы:
Вопрос: по моим расчетам, строка с id = menu-level-2-2 должна отображаться на том же месте где и menu-level-2-1, но она (menu-level-2-2 ) отображается ниже, тоесть так как и расположена в таблице. Можно ли это как-то исправить. Или не в таблице надо хранить второй уровень. То есть мне надо, чтобы по клику на первом уровне отображалась соответствующая строка из второго уровня прямо под первым уровнем.
Есть меню, состоящее из двух таблиц. По клику по строке из первой таблице, должна отображаться одна из строк второй таблицы:
Код:
<div id="menu-container">
<table id="dark">
<tr>
<td class="left">
<img src="img/x.gif" hspace="0" vspace="0">
</td>
<td class="container">
<table class="menu">
<tr>
<td class="left"></td>
<td class="items" id="menu-level-1">
<a href="#" class="item" id="1">Главная</a><img src="img/x.gif">
<a href="#" class="item" id="2">О портале</a><img src="img/x.gif">
<a href="#" class="item" id="3">Структура</a><img src="img/x.gif">
<a href="#" class="item" id="4">Пункт меню</a><img src="img/x.gif">
<a href="#" class="item" id="5">Библиотека</a><img src="img/x.gif">
<a href="#" class="item" id="6">Р_есурсы</a><img src="img/x.gif">
<a href="#" class="item" id="7">Контакты</a>
</td>
<td class="right"></td>
</tr>
</table>
</td>
<td class="right">
<img src="img/x.gif" hspace="0" vspace="0">
</td>
</tr>
</table>
<table id="light">
<tr>
<td class="left">
<img src="img/x.gif" hspace="0" vspace="0">
</td>
<td class="container">
<table class="menu">
<tr>
<td class="left"></td>
<td class="items" id="menu-level-2-1">
<a href="#" class="item" id="8">Подведомственные организации</a><img src="img/x.gif">
<a href="#" class="item" id="9">Р_есурсы</a><img src="img/x.gif">
<a href="#" class="item" id="10">Аналитика</a><img src="img/x.gif">
<a href="#" class="item" id="11">Что-нибудь еще</a><img src="img/x.gif">
<a href="#" class="item" id="12">Администраторы</a><img src="img/x.gif">
<a href="#" class="item" id="13">РџСѓРЅРєС‚</a>
</td>
<td class="right"></td>
</tr>
<tr>
<td class="left"></td>
<td class="items" id="menu-level-2-2">
<a href="#" class="item" id="14">Меню - 2-ой уровень - 1</a><img src="img/x.gif">
<a href="#" class="item" id="15">Меню - 2-ой уровень - 2</a><img src="img/x.gif">
<a href="#" class="item" id="10">Меню - 2-ой уровень - пункт3</a><img src="img/x.gif">
<a href="#" class="item" id="16">Меню - 2-ой уровень - 4</a><img src="img/x.gif">
<a href="#" class="item" id="17">Меню - 2-ой уровень - 5</a><img src="img/x.gif">
<a href="#" class="item" id="18">Меню - 2-ой уровень - 6</a> </td>
<td class="right"></td>
</tr>
</table>
</td>
<td class="right">
<img src="img/x.gif" hspace="0" vspace="0">
</td>
</tr>
</table>
Код:
$(
function() {
$("#menu-level-1> a.item, a.item-selected").click(
function(){
var elm = "#light #menu-level-2-"+$(this).attr("id");
$(elm).css("top",$("#menu-container > #dark ").offset().top + $("#menu-container > #dark").height()-2);
$(elm).css("left",$(this).offset().left);
if(this.className ="item")
this.className = this.className.replace("item","item-selected");
$(elm).css("visibility","visible");
});