Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > Управление слоями


Автор: ОнКофе 29.3.2006, 13:29
Меня тут вот такой вопрос заинтересовал

есть такой пример
Код

<table onMouseOver="showdiv('ppp', 1)" onMouseOut="showdiv('ppp', 0)">

<tr>
<td>ПУНКТ МЕНЮ</td>
</tr>

<tr>
<td>
<div id=ppp style="display:none;position:absolute;">
<table>
<tr>
<td><a href="index.htm">ПОДМЕНЮ</a></td>
</tr>
</table>
</div>
</td>
</tr>

</table>


то есть при наведении отображается слой, но он начинается из правого верхнего угла, а как сделать чтобы он начинался из левого верхнего угла???

У меня меню находится в верхнем правом углу, подменю выползает вниз от соответствующего пункта меню, но хотелось бы что бы оно начиналось на с правого угла а с левого...

пробовал сделать через align в ячейке, он только текст смещает вправо, а расположение слоя остается не изменным!!!

Автор: AztEK 29.3.2006, 14:01
Нужно узнать ширину блока (либо сделать фиксированной) и поставить left: это значение.

Автор: Bangladesh 30.3.2006, 22:10
пожно попробывать найти координаты с помощью js

Автор: AztEK 31.3.2006, 08:05
I, GyoZ я это и имел ввиду. Смысл в том, чтобы поставить в правый угол, но св-вом left сымитировать нахождение в левом углу.

Автор: ОнКофе 31.3.2006, 09:17
есть конкретные предложения??? Или только идеи???

Автор: AztEK 31.3.2006, 15:02
Вот например:

Код

function showdiv(id, mode)
{
   var div = document.getElementById(id);
   var winWidth = window.innerWidth; //Ширина экрана

   if(mode)
  {
       div.style.left = window.innerWidth - div.offsetWidth;
      //div.offsetWidth - ширина блока
       div.style.display = "";
   }
   else
   {
       div.style.display = "none";
   }

}


За правильность и кроссбраузерность не ручаюсь...

Автор: Micher 3.4.2006, 11:26
Зайди на http://www.kruglov.ru/klayers/
Там модуль есть для работы со слоями и документуха.Может воспользуешся, там довольно просто и удобно всё.

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