#6483 closed bug (worksforme)
[v1.4.2]jQuery.fn.offset(newOffset) issue
Reported by: | david.yu | Owned by: | david.yu |
---|---|---|---|
Priority: | undecided | Milestone: | 1.4.3 |
Component: | dimensions | Version: | 1.4.2 |
Keywords: | offset | Cc: | |
Blocked by: | Blocking: |
Description
When current element has an "absolute" position, and offsetParent of this element is BODY, jQuery.curCSS( elem, "top", true ) maybe get "auto" in safari4/IE8, and curTop = parseInt( jQuery.curCSS( elem, "top", true ), 10 ) | | 0, will return 0, then props will lost really top and left pixel value of current element.
var props = { top: (options.top - curOffset.top) + curTop, left: (options.left - curOffset.left) + curLeft}
Change History (6)
comment:1 Changed 13 years ago by
comment:2 Changed 13 years ago by
Component: | unfiled → dimensions |
---|
comment:3 Changed 12 years ago by
Owner: | set to david.yu |
---|---|
Priority: | → undecided |
Status: | new → pending |
Please provide a reduced jsFiddle test case, thanks!
Additionally, test against the jQuery 0 GIT version to ensure the issue still exists.
comment:4 Changed 12 years ago by
using jquery-1.4.3.js in google chrome6: http://jsfiddle.net/kCC9A/1/ setOffset method in version 1.4.3 is right now.
using jquery-1.4.2.js in google chrome6(FF is right): http://jsfiddle.net/kCC9A/2/ setOffset method does not run as expected.
comment:5 Changed 12 years ago by
Resolution: | → worksforme |
---|---|
Status: | pending → closed |
As can be verified by looking at the test case for jQuery 1.4.3 provided above and the following test case Live Test Case for jQury 1.4.4, the offset behavior originally described seems to be working fine now.
If there are any additional comments or test cases you would like to submit for us to investigate, please feel free to re-submit them and we'll take a look.
Thanks!
var props = {
};
add below line to fix this issue.
if (jQuery.nodeName(curElem.offsetParent()[0], 'body') && curElem.css('position') === 'absolute') {
}