JQuery и IE6

StormBreaker

Registered
Тъй. Имам един слой с position: absolute чиято позиция се опитвам да задам чрез Jquery базирано на потребителската резолюция.
Код:
var x = (window.innerWidth - 313) / 2 + 300;
var y = 450;
			
$('#enterSite').css("left", x );
$('#enterSite').css("top", y );
С FF3, Opera, Chrome и т.н. всичко си работи нормално. Обаче IE6 не ще да приеме новите стойности. Все едно просто игнорира тоя код. Слоя се показва горе в ляво.
 
I_V_O каза:
x + "px"
y + "px"

Не става току що го пробвах.

ПП. И друг начин за позициониране на елемент с отстъп от центъра би ми помогнал, дори и без JQuery
 
I_V_O каза:
IE6 не потдържа innerWidth. Използвай jquery(..).innerWidth()
и си добавяй мерната еденица.

За това си прав но не е тук проблема...
И така да го направя пак не работи:
Код:
var x = 300;
var y = 450;
         
$('#enterSite').css("left", x + "px" );
$('#enterSite').css("top", y + "px" );
 
Пробвай с това което ти казах. Ако не стане дай един alert( x +'\n" + y ); и веднага ще разбереш каде бъркаш.

Едит: Значи някаде с позицията е проблема. Дай един alert( $('#enterSite').css( "position" ) );
 
Как да взема на екрана вътрешното с $(window).innerHeight() не става, а с $("body").innerHeight() връща на <body размерите, които са по-малки от на самия екран. $("html").. работи само при IE
 
Наскоро и аз имах подобен проблем!
Ето какво ми свърши работа:
http://it.toolbox.com/blogs/css-asylum/the-ie6-absolute-positioning-bug-15285

Ето и линк към гугъл
http://www.google.bg/search?q=ie6+position+absolute+problem&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a

:)
 

Back
Горе