Вообщем все выродилось в такую функцию которая меня раздражает
function getMaxScrollLeft (o) {
if (typeof o == 'string') {
o = document.getElementById(o);
}
if (typeof o != 'object') {
return undefined;
}
var
origScrollLeft = o.scrollLeft,
iter = 1000,
scrollLeft = origScrollLeft;
do {
scrollLeft = o.scrollLeft;
o.scrollLeft += iter;
} while (o.scrollLeft != scrollLeft);
o.scrollLeft = origScrollLeft;
return scrollLeft;
}