Подскажите как реализовать
Прошу подсказать как реализовать создание данного интерфейса
1. Если добавить много строчек так чтобы появилась вертикальная прокрутка значении "ИТОГО" должно прилипнуть к нижней границе браузера вокруг него должно появиться рамка. 2. Когда прокручиваем до самого низа и строчка "ИТОГО" ничего не перекрывает - рамка исчезает Первый пункт реализовал так /*---------------------------------------------------------------------------------- Если добавить много строчек так чтобы появилась вертикальная прокрутка значение "ИТОГО" должно прилипнуть к нижней границе браузера вокруг него должно появиться рамка. -----------------------------------------------------------------------------------*/ function getsize() { poscont = getElementPosition('cont'); var topcont = poscont.top;//положение от вержнего края var heightcont = poscont.height;//высота ДИВа с добавлениями var heightresdiv = posresdiv.height;//высота Итого heightClient = getClientHeight();//высота клиентской (рабочей) области окна браузера bottomcont = parseInt(topcont) + parseInt(heightcont) + parseInt(heightresdiv);//положение от вержнего края + высота //lblresult.value = heightClient + " Итого (низ:" + bottomcont + ")"; /*-------------------------------------------------------------------------------- вычислить разность между heightClient - bottomcont если отрицательная - то изменить CSS resdiv на рамку } --------------------------------------------------------------------------------*/ resultcss = heightClient - bottomcont; if (resultcss <= 0) resdiv.className = "border"; else resdiv.className = " "; } //Как узнать положение элемента на странице (определение координат элемента)? 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 }; } //IE5+, Mozilla 1.0+, Opera 7+ //Как узнать ширину и высоту клиентской (рабочей) области окна браузера? //http://www.cyberguru.ru/web/html/javascript-samples-page2.html /*-------------------------------------------------------------------------- var t = document.getElementById('test'); t.style.width = getDocumentWidth() + 'px'; t.style.height = getDocumentHeight() + 'px'; -------------------------------------------------------------------------------*/ function getClientWidth() { return document.compatMode == 'CSS1Compat' && !window.opera ? document.documentElement.clientWidth : document.body.clientWidth; } function getClientHeight() { return document.compatMode == 'CSS1Compat' && !window.opera ? document.documentElement.clientHeight : document.body.clientHeight; } а вот по второму ничего не могу понять :-/ |
Фиксация строки в пределах блока при прокрутке страницы
krakoss,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> #fix{height:700px;background:#FF3} #cont{width:200px;height:30px;background:#0C0} .border{border:#FF3333 3px solid;position:absolute;z-index:100;top:100px} body{position:relative;height:1000px;background:#DDD} p{margin:0px} .win{height:500px} </style> <script> window.onload = window.onscroll = window.onresize = function () { var a = document.getElementById("cont"), b = document.getElementById("fix").getBoundingClientRect(), b = b.top + (a.scrollHeight + 6) < document.documentElement.clientHeight && b.bottom + (a.scrollHeight + 6) > document.documentElement.clientHeight; a.style.top = document.documentElement.clientHeight + (window.pageYOffset || document.documentElement.scrollTop) - (a.scrollHeight + 15) + "px"; a.className = b ? "border" : "" }; </script> </head> <body> <p class="win"></p> <p id="fix">1<br>2<br></p> <p id="cont">Итого</p> <p class="win"></p> </body> </html> |
krakoss,
Вариант покороче ... <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> #fix{height:700px;background:#FF3} #cont{width:200px;height:30px;background:#0C0} .border{border:#FF3333 3px solid;position: fixed;z-index:100; bottom: 0px} body{position:relative;height:1000px;background:#DDD} p{margin:0px} .win{height:500px} </style> <script> window.onload = window.onscroll = window.onresize = function () { var a = document.getElementById("cont"), b = document.getElementById("fix").getBoundingClientRect(), b = b.top + a.scrollHeight + 6 < document.documentElement.clientHeight && b.bottom + a.scrollHeight + 6 > document.documentElement.clientHeight; a.classList[b ? "add" : "remove"]("border"); }; </script> </head> <body> <p class="win"></p> <p id="fix">1<br>2<br></p> <p id="cont">Итого</p> <p class="win"></p> </body> </html> |
рони,
а как реализовать эту задачу http://javascript.ru/forum/dom-windo...it-udalit.html P.S. Эта задача ни как не связана с сайтом на котором выложены рисунки - там все написано на c#. кому интересно логин и пароль - kkk тестовый режим. P.S.S. Защита на входе реализована на c# http://msdn.microsoft.com/ru-ru/libr...v=vs.110).aspx В целях обучения хочу понять и научиться как создавать интерфейсы на javascrip На c# всё уже есть в visual studio 2013 в частности как отформатировать строку для отображения чисел в том формате как на рисунке не 55555 а 55 555 |
krakoss,
по первому вопросу тоже есть примеры на форуме ... если очень надо то раздел работа ... но у вас и самого всё неплохо получается |
рони,
спасибо буду разбираться ... |
Часовой пояс GMT +3, время: 00:32. |