Показать сообщение отдельно
  #9 (permalink)  
Старый 13.05.2012, 21:40
Аспирант
Отправить личное сообщение для codingfighter Посмотреть профиль Найти все сообщения от codingfighter
 
Регистрация: 05.04.2012
Сообщений: 65

Помогите пожалуйста допилить код

function findPosition(oElement) {
	        if (typeof (oElement.offsetParent) != 'undefined') {
	            for (var posX = 0, posY = 0; oElement; oElement = oElement.offsetParent) {
	                posX += oElement.offsetLeft;
	                posY += oElement.offsetTop;
	            }
				
				posY += 20; 
				
	            return [posX, posY];
	        } else {
				oElement.y += 20;
				
	            return [oElement.x, oElement.y];
	        }
}
	
function echo_test_div(elem) {
	var get_position = findPosition(elem);

	if(get_position.length == 2) {
		var getdiv = document.createElement('div');
		getdiv.innerHTML = 'Я див';
		getdiv.style.position = 'absolute';
		getdiv.style.left = get_position[0]+'px';
		getdiv.style.top = get_position[1]+'px';
		document.body.appendChild(getdiv);
	}
}


...

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span id="ab" onclick="echo_test_div(this)">test</span>


даже в ie вставляет под элелментом, а вот chrome и сафари чего-то сдвигает элемент немного влево. и я что-то не пойму зачем цикл в функции findPosition, и откуда данные берутся в случае else ? надыбал функцию на этом форуме...

Последний раз редактировалось codingfighter, 13.05.2012 в 21:42.
Ответить с цитированием