Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Центрирование. Выручайте. (https://javascript.ru/forum/dom-window/24400-centrirovanie-vyruchajjte.html)

lemad 28.12.2011 17:18

Центрирование. Выручайте.
 
Добрый день!

Я в java не очень, мягко говоря. Суть проблемы: при нажатии на кнопку "к корзину", появляется картинка (по центру экрана). Только вот в Опере картинка появляется где угодно, но только не поцентру. Подскажите, что поправить в коде. Заранее, спасибо!
function setPosition()
{
    var Y = getClientCenterY() - 98;
	if ( window.opera ) Y = ( Y * 0.6 ).toFixed(0);

	document.getElementById('add_to_cart').style.left = ( getClientCenterX() - 92 ) + 'px';
	document.getElementById('add_to_cart').style.top = Y + 'px';
	document.getElementById('add_to_cart').style.display = 'block';
	document.getElementById('add_to_cart').style.position = 'absolute';

	window.setTimeout(function() {closePosition()}, 3000);
}

function closePosition() {

	document.getElementById('add_to_cart').style.left = -1000 + 'px';
	document.getElementById('add_to_cart').style.top = -1000 + 'px';
	document.getElementById('add_to_cart').style.display = 'none';
}

function getBodyScrollTop()
{
    return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}

function getBodyScrollLeft()
{
    return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}

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;
}

function getClientCenterX()
{
    return parseInt(getClientWidth()/2)+getBodyScrollLeft();
}

function getClientCenterY()
{
    return parseInt(getClientHeight()/2)+getBodyScrollTop();
}

melky 28.12.2011 17:47

попробуйте закомментировать строку номер 4

lemad 29.12.2011 12:09

Была закоментирована изначально, я раскоментировал, но результата особого нет (

Дополнил код в предыдущем посте.

nerv_ 30.12.2011 13:49

lemad, может пригодится, делал недавно простенькую игру - Найди пару, там функция FindPair.setPosition.


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