You should try using 1.3.1 first.

--John

On 1/22/09, Andrea Giammarchi <[email protected]> wrote:
> weird ... apparently my code VS offset does not change in FireFox while in
> IE I obtain different behaviours.
> offset seems to be in any case the answer, but in IE I have a couple of
> pixels that are not aligned.
>
> <div style="position:relative;top:100px;left:100px;">
>     This text is not visible
>      <div id="nested"
> style="position:absolute;top:0px;left:0px;height:100px;width:200px;background-color:#EEE;">
>         Hello relatively absolute position
>      </div>
> </div>
> <div id="out"
> style="position:absolute;height:100px;width:200px;background-color:#DDD;"></div>
> <script src="jquery-1.2.6.min.js"></script>
> <script>
> onload = function(){
>     var p = $("#nested").offset();
>     $("#out").css({
>         top:p.top,
>         left:p.left
>     });
> }
> </script>
>
> Any guess?
>
>
> On Thu, Jan 22, 2009 at 12:12 PM, Andrea Giammarchi <
> [email protected]> wrote:
>
>> Uhm ... I tried offsetParent and I was stuck with {0,0} but maybe you are
>> right and I am going to try :D
>>
>> Cheers
>>
>>
>> On Thu, Jan 22, 2009 at 11:43 AM, Jörn Zaefferer <
>> [email protected]> wrote:
>>
>>>
>>> Isn't that what offset() does? "Get the current offset of the first
>>> matched element relative to the document."
>>>
>>> Jörn
>>>
>>> On Thu, Jan 22, 2009 at 12:32 PM, Andrea Giammarchi
>>> <[email protected]> wrote:
>>> > Something like this, for example ( at least this is how I have solved
>>> right
>>> > now )
>>> >
>>> > $.fn.position = function(position){
>>> >     return function(absolute){
>>> >         if(absolute === true){
>>> >             var p, e = this[0];
>>> >             if(e){
>>> >                 p = position.call(this);
>>> >                 while(e = e.offsetParent)try{
>>> >                     with(position.call($(e))){
>>> >                         p.left += left;
>>> >                         p.top += top;
>>> >                     }
>>> >                 }catch(e){}
>>> >             }
>>> >         }
>>> >         else
>>> >             var p = position.apply(this, arguments);
>>> >         if(p){// just for me ...
>>> >             p.x = p.left;
>>> >             p.y = p.top;
>>> >         };
>>> >         return p
>>> >     }
>>> > }($.fn.position);
>>> >
>>> > Regards
>>> >
>>> >
>>> >
>>> > On Thu, Jan 22, 2009 at 11:08 AM, Andrea Giammarchi
>>> > <[email protected]> wrote:
>>> >>
>>> >> You know that when an element has position absolute, it does not
>>> necessary
>>> >> mean that its position is from top and left of the page.
>>> >>
>>> >> For example, if I have a situation like this one:
>>> >> <div style="position:relative;top:100px;left:100px;">
>>> >>     This text is not visible
>>> >>      <div id="nested"
>>> >>
>>> style="position:absolute;top:0px;left:0px;height:100px;background-color:#FFF;">
>>> >>         Hello relatively absolute position
>>> >>      </div>
>>> >> </div>
>>> >> The nested div with absolute position will be positioned at the top
>>> left
>>> >> corner of its parent with relative position.
>>> >>
>>> >> As summary, this is my question:
>>> >> is it an expected behavior that $("#nested").position() is {top:0,
>>> left:0}
>>> >> ?
>>> >> Is there any chance jQuery will introduce a boolean argument to
>>> calculate
>>> >> the real position of an element with or without "position:static"
>>> convention
>>> >> ?
>>> >>
>>> >> In my case it would be useful for drawing functionality with spread
>>> >> elements inside floating containers ...
>>> >>
>>> >> Regards
>>> >
>>> >
>>> > >
>>> >
>>>
>>> >>
>>>
>>
>
> >
>


-- 
--John

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"jQuery Development" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/jquery-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to