add: if (this.options.snap) { this.drag.options.grid = Math.ceil(this.stepWidth); this.drag.options.limit[this.axis][1] = this.full; } 
context: 	initialize: function(element, knob, options){		this.setOptions(options);		this.element = $(element);		this.knob = $(knob);		this.previousChange = this.previousEnd = this.step = -1;		this.element.addEvent('mousedown', this.clickedElement.bind(this));		var offset, limit = {}, modifiers = {'x': false, 'y': false};		switch (this.options.mode){			case 'vertical':				this.axis = 'y';				this.property = 'top';				offset = 'offsetHeight';				break;			case 'horizontal':				this.axis = 'x';				this.property = 'left';				offset = 'offsetWidth';		}		this.half = this.knob[offset] / 2;		this.max = this.element[offset] - this.knob[offset] + (this.options.offset * 2);		this.knob.setStyle('position', 'relative').setStyle(this.property, - this.options.offset);		modifiers[this.axis] = this.property;		limit[this.axis] = [- this.options.offset, this.max - this.options.offset];		this.drag = new Drag(this.knob, {			snap: 0,			limit: limit,			modifiers: modifiers,			onDrag: this.draggedKnob.bind(this),			onStart: this.draggedKnob.bind(this),			onComplete: function(){				this.draggedKnob();				this.end();			}.bind(this)		});	},
meta: 5237	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5237/6f0922e221b522c1c90701e0e3babbbfb833e37b/Slider.js/buggy/Source/Plugins/Slider.js