⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 slider.js

📁 这是一个ajax的例子大家好好的看看就是一个鱼眼的效果
💻 JS
📖 第 1 页 / 共 2 页
字号:
if(!dojo._hasResource["dijit.form.Slider"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.dojo._hasResource["dijit.form.Slider"] = true;dojo.provide("dijit.form.Slider");dojo.require("dijit.form._FormWidget");dojo.require("dijit._Container");dojo.require("dojo.dnd.move");dojo.require("dijit.form.Button");dojo.require("dojo.number");dojo.require("dojo._base.fx");dojo.declare(	"dijit.form.HorizontalSlider",	[dijit.form._FormValueWidget, dijit._Container],{	// summary	//	A form widget that allows one to select a value with a horizontally draggable image	templateString:"<table class=\"dijit dijitReset dijitSlider\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" rules=\"none\"\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t\t><td dojoAttachPoint=\"containerNode,topDecoration\" class=\"dijitReset\" style=\"text-align:center;width:100%;\"></td\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t></tr\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\"\n\t\t\t><div class=\"dijitSliderDecrementIconH\" tabIndex=\"-1\" style=\"display:none\" dojoAttachPoint=\"decrementButton\" dojoAttachEvent=\"onclick: decrement\"><span class=\"dijitSliderButtonInner\">-</span></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderLeftBumper dijitSliderLeftBumper\" dojoAttachEvent=\"onclick:_onClkDecBumper\"></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><input dojoAttachPoint=\"valueNode\" type=\"hidden\" name=\"${name}\"\n\t\t\t/><div waiRole=\"presentation\" style=\"position:relative;\" dojoAttachPoint=\"sliderBarContainer\"\n\t\t\t\t><div waiRole=\"presentation\" dojoAttachPoint=\"progressBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderProgressBar dijitSliderProgressBarH\" dojoAttachEvent=\"onclick:_onBarClick\"\n\t\t\t\t\t><div dojoAttachPoint=\"sliderHandle,focusNode\" class=\"dijitSliderMoveable dijitSliderMoveableH\" dojoAttachEvent=\"onkeypress:_onKeyPress,onmousedown:_onHandleClick\" waiRole=\"slider\" valuemin=\"${minimum}\" valuemax=\"${maximum}\"\n\t\t\t\t\t\t><div class=\"dijitSliderImageHandle dijitSliderImageHandleH\"></div\n\t\t\t\t\t></div\n\t\t\t\t></div\n\t\t\t\t><div waiRole=\"presentation\" dojoAttachPoint=\"remainingBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderRemainingBar dijitSliderRemainingBarH\" dojoAttachEvent=\"onclick:_onBarClick\"></div\n\t\t\t></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderRightBumper dijitSliderRightBumper\" dojoAttachEvent=\"onclick:_onClkIncBumper\"></div\n\t\t></td\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\" style=\"right:0px;\"\n\t\t\t><div class=\"dijitSliderIncrementIconH\" tabIndex=\"-1\" style=\"display:none\" dojoAttachPoint=\"incrementButton\" dojoAttachEvent=\"onclick: increment\"><span class=\"dijitSliderButtonInner\">+</span></div\n\t\t></td\n\t></tr\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t\t><td dojoAttachPoint=\"containerNode,bottomDecoration\" class=\"dijitReset\" style=\"text-align:center;\"></td\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t></tr\n></table>\n",	value: 0,	// showButtons: boolean	//	Show increment/decrement buttons at the ends of the slider?	showButtons: true,	// minimum:: integer	//	The minimum value allowed.	minimum: 0,	// maximum: integer	//	The maximum allowed value.	maximum: 100,	// discreteValues: integer	//	The maximum allowed values dispersed evenly between minimum and maximum (inclusive).	discreteValues: Infinity,	// pageIncrement: integer	//	The amount of change with shift+arrow	pageIncrement: 2,	// clickSelect: boolean	//	If clicking the progress bar changes the value or not	clickSelect: true,	// slideDuration: Number	//	The time in ms to take to animate the slider handle from 0% to 100%	slideDuration: 1000,	widgetsInTemplate: true,	attributeMap: dojo.mixin(dojo.clone(dijit.form._FormWidget.prototype.attributeMap),		{id:"", name:"valueNode"}),	baseClass: "dijitSlider",	_mousePixelCoord: "pageX",	_pixelCount: "w",	_startingPixelCoord: "x",	_startingPixelCount: "l",	_handleOffsetCoord: "left",	_progressPixelSize: "width",	_onKeyPress: function(/*Event*/ e){		if(this.disabled || this.readOnly || e.altKey || e.ctrlKey){ return; }		switch(e.keyCode){			case dojo.keys.HOME:				this.setValue(this.minimum, true);				break;			case dojo.keys.END:				this.setValue(this.maximum, true);				break;			// this._descending === false: if ascending vertical (min on top)			// (this._descending || this.isLeftToRight()): if left-to-right horizontal or descending vertical			case ((this._descending || this.isLeftToRight()) ? dojo.keys.RIGHT_ARROW : dojo.keys.LEFT_ARROW):			case (this._descending === false ? dojo.keys.DOWN_ARROW : dojo.keys.UP_ARROW):			case (this._descending === false ? dojo.keys.PAGE_DOWN : dojo.keys.PAGE_UP):				this.increment(e);				break;			case ((this._descending || this.isLeftToRight()) ? dojo.keys.LEFT_ARROW : dojo.keys.RIGHT_ARROW):			case (this._descending === false ? dojo.keys.UP_ARROW : dojo.keys.DOWN_ARROW):			case (this._descending === false ? dojo.keys.PAGE_UP : dojo.keys.PAGE_DOWN):				this.decrement(e);				break;			default:				this.inherited(arguments);				return;		}		dojo.stopEvent(e);	},	_onHandleClick: function(e){		if(this.disabled || this.readOnly){ return; }		if(!dojo.isIE){			// make sure you get focus when dragging the handle			// (but don't do on IE because it causes a flicker on mouse up (due to blur then focus)			dijit.focus(this.sliderHandle);		}		dojo.stopEvent(e);	},		_isReversed: function(){		return !this.isLeftToRight();	},	_onBarClick: function(e){		if(this.disabled || this.readOnly || !this.clickSelect){ return; }		dijit.focus(this.sliderHandle);		dojo.stopEvent(e);		var abspos = dojo.coords(this.sliderBarContainer, true);		var pixelValue = e[this._mousePixelCoord] - abspos[this._startingPixelCoord];		this._setPixelValue(this._isReversed() ? (abspos[this._pixelCount] - pixelValue) : pixelValue, abspos[this._pixelCount], true);	},	_setPixelValue: function(/*Number*/ pixelValue, /*Number*/ maxPixels, /*Boolean, optional*/ priorityChange){		if(this.disabled || this.readOnly){ return; }		pixelValue = pixelValue < 0 ? 0 : maxPixels < pixelValue ? maxPixels : pixelValue;		var count = this.discreteValues;		if(count <= 1 || count == Infinity){ count = maxPixels; }		count--;		var pixelsPerValue = maxPixels / count;		var wholeIncrements = Math.round(pixelValue / pixelsPerValue);		this.setValue((this.maximum-this.minimum)*wholeIncrements/count + this.minimum, priorityChange);	},	setValue: function(/*Number*/ value, /*Boolean, optional*/ priorityChange){		this.valueNode.value = this.value = value;		dijit.setWaiState(this.focusNode, "valuenow", value);		this.inherited(arguments);		var percent = (value - this.minimum) / (this.maximum - this.minimum);		var progressBar = (this._descending === false) ? this.remainingBar : this.progressBar;		var remainingBar = (this._descending === false) ? this.progressBar : this.remainingBar;		if(priorityChange && this.slideDuration > 0 && progressBar.style[this._progressPixelSize]){			// animate the slider			var _this = this;			var props = {};			var start = parseFloat(progressBar.style[this._progressPixelSize]);			var duration = this.slideDuration * (percent-start/100);			if(duration == 0){ return; }			if(duration < 0){ duration = 0 - duration; }			props[this._progressPixelSize] = { start: start, end: percent*100, units:"%" };			dojo.animateProperty({ node: progressBar, duration: duration, 				onAnimate: function(v){ remainingBar.style[_this._progressPixelSize] = (100-parseFloat(v[_this._progressPixelSize])) + "%"; },			        properties: props			}).play();		}		else{			progressBar.style[this._progressPixelSize] = (percent*100) + "%";			remainingBar.style[this._progressPixelSize] = ((1-percent)*100) + "%";		}	},	_bumpValue: function(signedChange){		if(this.disabled || this.readOnly){ return; }		var s = dojo.getComputedStyle(this.sliderBarContainer);		var c = dojo._getContentBox(this.sliderBarContainer, s);		var count = this.discreteValues;		if(count <= 1 || count == Infinity){ count = c[this._pixelCount]; }		count--;		var value = (this.value - this.minimum) * count / (this.maximum - this.minimum) + signedChange;		if(value < 0){ value = 0; }		if(value > count){ value = count; }		value = value * (this.maximum - this.minimum) / count + this.minimum;		this.setValue(value, true);	},	_onClkIncBumper: function(){		this.setValue(this._descending === false ? this.minimum : this.maximum, true);	},	_onClkDecBumper: function(){		this.setValue(this._descending === false ? this.maximum : this.minimum, true);	},	decrement: function(e){		// summary		//	decrement slider by 1 unit		this._bumpValue(e.keyCode == dojo.keys.PAGE_DOWN?-this.pageIncrement:-1);	},	increment: function(e){		// summary		//	increment slider by 1 unit		this._bumpValue(e.keyCode == dojo.keys.PAGE_UP?this.pageIncrement:1);	},	_mouseWheeled: function(/*Event*/ evt){		dojo.stopEvent(evt);		var scrollAmount = 0;		if(typeof evt.wheelDelta == 'number'){ // IE			scrollAmount = evt.wheelDelta;		}else if(typeof evt.detail == 'number'){ // Mozilla+Firefox			scrollAmount = -evt.detail;		}		if(scrollAmount > 0){			this.increment(evt);		}else if(scrollAmount < 0){			this.decrement(evt);		}	},	startup: function(){		dojo.forEach(this.getChildren(), function(child){			if(this[child.container] != this.containerNode){				this[child.container].appendChild(child.domNode);			}		}, this);	},	postCreate: function(){		if(this.showButtons){			this.incrementButton.style.display="";			this.decrementButton.style.display="";		}		this.connect(this.domNode, dojo.isIE ? "onmousewheel" : 'DOMMouseScroll', "_mouseWheeled");		// define a custom constructor for a SliderMover that points back to me		var _self = this;		var mover = function(){			dijit.form._SliderMover.apply(this, arguments);			this.widget = _self;		};		dojo.extend(mover, dijit.form._SliderMover.prototype);		this._movable = new dojo.dnd.Moveable(this.sliderHandle, {mover: mover});		dijit.setWaiState(this.focusNode, "valuemin", this.minimum);		dijit.setWaiState(this.focusNode, "valuemax", this.maximum);		this.inherited(arguments);	},	destroy: function(){		this._movable.destroy();		this.inherited(arguments);		}});dojo.declare(	"dijit.form.VerticalSlider",	dijit.form.HorizontalSlider,{

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -