Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Остановка блока при прокрутке страницы вверх (https://javascript.ru/forum/dom-window/30288-ostanovka-bloka-pri-prokrutke-stranicy-vverkh.html)

Lutsk 30.07.2012 16:29

Остановка блока при прокрутке страницы вверх
 
Есть, например, код:
<div class="header" style="height: 100px;"></div>
<div id="fix"></div>

Как сделать, чтоб блок "fix" при прокручивании страницы вверх оставался вверку окна браузера?

Другими словами. Если координата "top" элемента <div id="fix"> становится "0", - присвоить ему стиль position: fixed; (или класс).

Deff 30.07.2012 17:11

Цитата:

Сообщение от Lutsk
Как сделать, чтоб блок "fix" при прокручивании страницы вверх оставался вверку окна браузера?

http://javascript.ru/forum/misc/2898...kie-bloki.html

Или Вот => http://javascript.ru/forum/misc/2892...ollinge-2.html пост 11

Lutsk 30.07.2012 17:36

Я плохо знаю синтаксис (вернее не знаю). Но здается мне, тут надо плясать от координат окна браузера. Вот откопал скрипт, который их определяет:
function getElementPosition(elemId)
{
   var elem = document.getElementById(elemId);

   var w = elem.offsetWidth;
   var h = elem.offsetHeight;

   var l = 0;
   var t = 0;

   while (elem)
   {
     l += elem.offsetLeft;
     t += elem.offsetTop;
     elem = elem.offsetParent;
   }

   return {"left":l, "top":t, "width": w, "height":h};
}

вот и сделать условие if(){}, где при условии, что "top" == 0, элементу "div" назначается class. Но как его написать, - не знаю.

Deff 30.07.2012 17:44

Lutsk,
Ждите bes - он в нативном js посильнее и занимался данной задачей

http://javascript.ru/tutorial/dom/at...s-dom-svoystva

http://javascript.ru/tutorial/dom/intro#classname


Часовой пояс GMT +3, время: 04:23.