- /* A workaround for IE issues in mootools 1.2.1
- * - Recreates FX.Scroll() but utilises 1.2.0's getPosition/getOffset routines.
- */
- Fx.Scroll2 = new Class({
- 'Extends': Fx.Scroll,
- 'styleString': Element.getComputedStyle,
- 'styleNumber': function(element, style) {
- return this.styleString(element, style).toInt() || 0;
- },
- 'borderBox': function(element) {
- return this.styleString(element, '-moz-box-sizing') == 'border-box';
- },
- 'topBorder': function(element) {
- return this.styleNumber(element, 'border-top-width');
- },
- 'leftBorder': function(element) {
- return this.styleNumber(element, 'border-left-width');
- },
- 'isBody': function(element) {
- return (/^(?:body|html)$/i).test(element.tagName);
- },
- 'toElement': function(el) {
- var offset = {x: 0, y: 0};
- var element = $(el);
- if (this.isBody(element)) {
- return offset;
- }
- var scroll = element.getScrolls();
- while (element && !this.isBody(element)){
- offset.x += element.offsetLeft;
- offset.y += element.offsetTop;
- if (Browser.Engine.gecko){
- if (!this.borderBox(element)){
- offset.x += this.leftBorder(element);
- offset.y += this.topBorder(element);
- }
- var parent = element.parentNode;
- if (parent && this.styleString(parent, 'overflow') != 'visible'){
- offset.x += this.leftBorder(parent);
- offset.y += this.topBorder(parent);
- }
- } else if (Browser.Engine.trident || Browser.Engine.webkit){
- offset.x += this.leftBorder(element);
- offset.y += this.topBorder(element);
- }
- element = element.offsetParent;
- if (Browser.Engine.trident) {
- while (element && !element.currentStyle.hasLayout) {
- element = element.offsetParent;
- }
- }
- }
- if (Browser.Engine.gecko && !this.borderBox(element)){
- offset.x -= this.leftBorder(element);
- offset.y -= this.topBorder(element);
- }
- var relative = this.element;
- var relativePosition = (relative && (relative = $(relative))) ? relative.getPosition() : {x: 0, y: 0};
- var position = {x: offset.x - scroll.x, y: offset.y - scroll.y};
- return this.start(position.x - relativePosition.x, position.y - relativePosition.y);
- }
- });
Hello, I have funny efect in IE, have to made scroll next and previous buttons
In Firefox everything works well but in IE scrollNext button scroll to next element
then scroll back and scroll forward.
Can anybody would help me and show me where is the problem
or give me similar example.
http://www.maslak.waw.pl/scroll/
Thanks.


