Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   как узнать координаты нижней части фото javascript (https://javascript.ru/forum/events/35248-kak-uznat-koordinaty-nizhnejj-chasti-foto-javascript.html)

alex2012 05.02.2013 00:10

как узнать координаты нижней части фото javascript
 
как узнать координаты нижней части фото если это возможно

двигаю фото с помощью Drag'n'Drop координаты top получаю а bottom

нет. как можно получить нижней части фото?

пример кода который получает координаты топ и записывает их значение в style=""

<div id="top"style="height:300px;"></div>
<div id="sss"style="border:solid black; height:300px;
 width:900px;margin-left:25%;top:1;z-index:22;">
 <img src='pic2.jpg' style="position:relative; left:0; top:-40; bottom:0; z-index:21; width:1000px; height:650px;"   id="img2"/>
</div>
<div id="bottom"style="height:300px;"></div>

<script>
//elemX=0;// Глобальная координата x нажатия мыши относительно элемента
elemY=0;// Глобальная координата y нажатия мыши относительно элемента
drag=false;// Глобальная переменная, разрешающая или запрещающая перемещение элемента
function $$(id)
{
return document.getElementById(id);
}
$$('img2').onmousedown = function(e){

			   e = e || window.event;
			  //elemX=e.clientX+document.body.scrollLeft-parseInt($$('img').style.left);
			  elemY=e.clientY+document.body.scrollTop-parseInt($$('img2').style.top);
			  
			  drag=true;
                          }
$$('img2').ondragstart = function() {return false;}
document.onmouseup = function() {drag=false;}
document.onmousemove = function(e) {
			e = e || window.event;
			//elx=parseInt(e.clientX)-elemX;
			ely=parseInt(e.clientY)-elemY;
			if(drag){
			//$$('img').style.left=e.clientX+document.body.scrollLeft-elemX;
			$$('img2').style.top=e.clientY+document.body.scrollTop-elemY;
			
			}

danik.js 05.02.2013 00:19

Элементарно: bottom = top + height.

alex2012 05.02.2013 00:55

Спасибо за ответ! Вопрос ещё такой у меня картинка находится в диве <div>img</div>

top 0px если я смещаю фото верх и верхняя часть фото уходит за линию блока, top уходит в минус -20px И.Т.Д

как сделать такое же только с bottom: то есть узнать сколько пикселей от нижней части фото до нижней части блока

Извините за каламбур:)

danik.js 05.02.2013 01:10

А может подойдет метод el.getBoundingClientRect() ?

alex2012 05.02.2013 01:36

Координаты el.getBoundingClientRect() — относительно окна, а не документа

Deff 05.02.2013 01:39

deltaBottom = (Newtop +Newheight) -Oldtop -Oldheight

alex2012 05.02.2013 02:01

видимо я что то не пойму если добавить допустим
top 0px+ Newheight 300px
то var deltaBottom = 300px
но мне надо узнать сколько px между нижним углом фото и нижней рамкой diva

danik.js 05.02.2013 02:14

childBottomOffseet = parentHeight - (childTopOffset + childHeight)

alex2012 05.02.2013 02:33

О Спасибо то что надо было.


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