modifications for offset()

modifications for offset()


Probably @Brandon primarily...
I have a test version of some changes for offset(), basically:
- updated safari2 body offsets handling
- updated mozilla table handling and borders handling
- added thin/medium/thick border handling
- slightly modified IE body borders handling
For part of the testing I took the liberty of using and adding to your
visual test page(s) - an extra absolute and a table - as a consequence
of which I have played around with the links a bit! (There is also an
additional DIV#page to contain the test target areas).
http://www.wizzud.com/tester/ba_test_quirks.html and
http://www.wizzud.com/tester/ba_test_standard.html
It's running a modified v1.2.1, the modifications being:
- offset() has a switch at the top to redirect to offsetWizzud() if
set; otherwise it is the completely original code but with debug
statements threaded through it
- offsetWizzud() is my modified offset(), with debug statements
threaded through it (and quite a few comments)
- offset_WizzudClean() is offsetWizzud but cleaned up (no debug
statements, reduced comments, etc) ie more like production code, and
not called by the test pages at all - it's for comparison convenience.
The 2 test pages (above) will switch between the original offset() and
my modified version, and display of the debug info can be disabled.
I have tested on IE7, IE6, Firefox 2.0.0.7 (Win, Linux & Mac), Firefox
1.5.0.11 (Win), Safari 3beta (522.15.5) (Win), Opera 9.23 (Win & Mac),
Avant 10.2/11.5 (Win), Netscape 7.1 (Win), Safari 419.3 (Mac),
Konqueror 3.5.6 (Linux).
I don't have access to IE5.5 so if someone could test that I'd be
grateful
There are still some cases it won't/can't handle, but they're mainly
ones that either don't make sense HTML-wise, or where I found it nigh-
on impossible to determine what the browser is doing or how or why, or
if it mattered or I cared!
I hope it is useful.