Sha256: 2601d8353cee8284a3d143506d933733f140c4db751d3de1d21a2d470898fffb

Contents?: true

Size: 1.18 KB

Versions: 7

Compression:

Stored size: 1.18 KB

Contents

/*
---

script: Fx.Move.js

name: Fx.Move

description: Defines Fx.Move, a class that works with Element.Position.js to transition an element from one location to another.

license: MIT-style license

authors:
  - Aaron Newton

requires:
  - Core/Fx.Morph
  - /Element.Position

provides: [Fx.Move]

...
*/

Fx.Move = new Class({

	Extends: Fx.Morph,

	options: {
		relativeTo: document.body,
		position: 'center',
		edge: false,
		offset: {x: 0, y: 0}
	},

	start: function(destination){
		var element = this.element,
			topLeft = element.getStyles('top', 'left');
		if (topLeft.top == 'auto' || topLeft.left == 'auto'){
			element.setPosition(element.getPosition(element.getOffsetParent()));
		}
		return this.parent(element.position(Object.merge({}, this.options, destination, {returnPos: true})));
	}

});

Element.Properties.move = {

	set: function(options){
		this.get('move').cancel().setOptions(options);
		return this;
	},

	get: function(){
		var move = this.retrieve('move');
		if (!move){
			move = new Fx.Move(this, {link: 'cancel'});
			this.store('move', move);
		}
		return move;
	}

};

Element.implement({

	move: function(options){
		this.get('move').start(options);
		return this;
	}

});

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
lsd_rails-0.1.6 Packages/mootools-more/Source/Fx/Fx.Move.js
lsd_rails-0.1.5 Packages/mootools-more/Source/Fx/Fx.Move.js
lsd_rails-0.1.4 Packages/mootools-more/Source/Fx/Fx.Move.js
lsd_rails-0.1.3 Packages/mootools-more/Source/Fx/Fx.Move.js
lsd_rails-0.1.2 Packages/mootools-more/Source/Fx/Fx.Move.js
lsd_rails-0.1.1 Packages/mootools-more/Source/Fx/Fx.Move.js
lsd_rails-0.1 Packages/mootools-more/Source/Fx/Fx.Move.js