最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

CutePsWheel javascript libary 控制輸入文本框為可使用滾輪控制的js庫

 更新時間:2010年02月07日 11:44:40   作者:  
實現(xiàn)類似于Photoshop控制面板輸入文本數(shù)字的效果,所以名稱叫做PsWheel。用于控制輸入數(shù)字類型文本框?qū)崿F(xiàn)鼠標(biāo)滾輪上下滑動改變值,支持正整數(shù)、小數(shù)類型輸入文本。
簡介

實現(xiàn)類似于Photoshop控制面板輸入文本數(shù)字的效果,所以名稱叫做PsWheel。用于控制輸入數(shù)字類型文本框?qū)崿F(xiàn)鼠標(biāo)滾輪上下滑動改變值,支持正整數(shù)、小數(shù)類型輸入文本。
兼容IE/Firefox/Opera/Safari/Chrom
可定義滾動變化間隔值,支持整數(shù)、浮點數(shù)
雙擊恢復(fù)初始值
僅3.92K,壓縮后2.67K
代碼
復(fù)制代碼 代碼如下:

/*
* cutePsWheel JS
* Description:A js liabary which control the text type of input box can plus or minus value like Photoshop
* Author:walkingp
* Site:http://www.51obj.cn/
* E-mail:walkingp@126.com
* Last Modified:2010-2-5
*/
//Initial the wheel scroll event
var _orientValue=[];//orient value
var _interval=[];
var _length=[];
function InitScrollFunc(){
var eles=GetObj();
for(var i=0;i<eles.length;i++){
if(document.addEventListener){
(function(i){eles[i].addEventListener('DOMMouseScroll',function(e){e.preventDefault();e.stopPropagation();var direct=e.detail<0?1:-1;ScrollText(eles[i],direct);},false);})(i);
eles[i].addEventListener('dblclick',RestoreOrientValue,false);
eles[i].addEventListener('blur',RemoveScrollFunc,false);
//eles[i].addEventListener('mouseover',SetFocus,false);
}//W3C/Mozila
(function(i){eles[i].onmousewheel=function(){ScrollFunc(event,eles[i]);}})(i);//IE/Opera/Chrome/Safari
(function(i){eles[i].ondblclick=function(){RestoreOrientValue(eles[i]);;}})(i);
(function(i){eles[i].onblur=function(){RemoveScrollFunc(eles[i]);;}})(i);//Remove the wheel scroll event
(function(i){eles[i].onmouseover=function(){SetFocus(eles[i]);}})(i);
/*Initial the value array*/
if(eles[i].value!=""){
_orientValue.push(eles[i].value);
}else{
_orientValue.push(0);
}
if(eles[i].getAttribute("interval")){
_interval.push(parseFloat(eles[i].getAttribute("interval")));
if(eles[i].getAttribute("interval").toString().indexOf(".")>0){
var __length=parseInt(eles[i].getAttribute("interval").toString().length) - parseInt(eles[i].getAttribute("interval").toString().indexOf("."))-1;
_length.push(__length);//get the length follow the decimal point
}else{
_length.push(0);
}
}else{
_interval.push(1);
_length.push(0);
}
}
}
/*set object focus*/
function SetFocus(obj){
obj.focus();
obj.select();
}
/*remove the wheel scroll event*/
function RemoveScrollFunc(obj){
if(document.removeEventListener){
obj.removeEventListener('DOMMouseScroll',ScrollFunc,false);
obj.removeEventListener('dblclick',RestoreOrientValue,false);
}else if(document.detachEvent){
obj.detachEvent('onmousewheel',ScrollFunc);
obj.detachEvent('ondblclick',RestoreOrientValue);
}
}
/*Restore the text box's orient value when double click event trigger*/
function RestoreOrientValue(obj){
var eles=GetObj();
for(var i=0;i<eles.length;i++){
if(obj==eles[i]){
obj.value=_orientValue[i];
obj.select();
}
}
}
//core function
function ScrollFunc(){//for HTML DOM
var direct=0;
var e=arguments[0]||window.event;
if(window.event){
window.event.returnValue=false;
window.event.cancelBubble=true;//Stop event bubble
}
if(e.wheelDelta){
direct=e.wheelDelta>0?1:-1;
}
ScrollText(arguments[1],direct);
}
//reference by ScrollFunc
function ScrollText(obj,direct){
obj.focus();
var _value=0;
if(obj.value!=""){
_value=parseFloat(obj.value);
}
var eles=GetObj();
for(var i=0;i<eles.length;i++){
if(obj==eles[i]){
if(direct>0){
_value+=_interval[i];
}else{
_value-=_interval[i];
}
obj.value=_value.toFixed(_length[i]);//calulcate the rounding result
obj.select();//set select status
}
}
}
//referenced function,only get the object which has the 'rel' attribute
function GetObj(){
var objs=document.getElementsByTagName('input');
var elements=[];
for(var i=0;i<objs.length;i++){
if(objs[i].type=='text' && objs[i].getAttribute('rel') == 'wheel'){
elements.push(objs[i]);
}
}
return elements;
}
//Add the WheelScroll function
(function AddLoadEvent(func){
var _oldonload=window.onload;
if(typeof window.onload!='function'){
window.onload=func;
}else{
window.onload=function(){
_oldonload();
func();
}
}
})(InitScrollFunc);

效果圖

資源
點擊預(yù)覽 http://demo.jb51.net/js/cutePSWheel/demo.html
下載代碼

相關(guān)文章

  • Layui Table js 模擬選中checkbox的例子

    Layui Table js 模擬選中checkbox的例子

    今天小編就為大家分享一篇Layui Table js 模擬選中checkbox的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • js中toString方法3個作用

    js中toString方法3個作用

    這篇文章主要給大家分享了js中toString方法的3個作用,文章圍繞js中toString方法的相關(guān)資料展開全文內(nèi)容,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助
    2021-12-12
  • layui 富文本編輯器和textarea值的相互傳遞方法

    layui 富文本編輯器和textarea值的相互傳遞方法

    今天小編就為大家分享一篇layui 富文本編輯器和textarea值的相互傳遞方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • JavaScript面向?qū)ο髮崿F(xiàn)貪吃蛇游戲

    JavaScript面向?qū)ο髮崿F(xiàn)貪吃蛇游戲

    這篇文章主要為大家詳細(xì)介紹了JavaScript面向?qū)ο髮崿F(xiàn)貪吃蛇游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 用顯卡加速,輕松把筆記本打造成取暖器的辦法!

    用顯卡加速,輕松把筆記本打造成取暖器的辦法!

    本篇文章小編為大家介紹,用顯卡加速,輕松把筆記本打造成取暖器的辦法!需要的朋友可以參考一下
    2013-04-04
  • javascript驗證身份證號

    javascript驗證身份證號

    這篇文章主要介紹了javascript驗證身份證號,十分的詳細(xì),需要的朋友可以參考下
    2015-03-03
  • JavaScript Pinia代替 Vuex的可行性分析

    JavaScript Pinia代替 Vuex的可行性分析

    這篇文章主要介紹了JavaScript中Pinia是否可以代替Vuex,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Packer 3.0 JS壓縮及混淆工具 下載

    Packer 3.0 JS壓縮及混淆工具 下載

    Packer 3.0 JS壓縮及混淆工具 下載...
    2007-05-05
  • js Array.slice的8種不同用法示例

    js Array.slice的8種不同用法示例

    這篇文章主要給大家介紹了關(guān)于js Array.slice的8種不同用法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用js 具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • js實現(xiàn)煙花特效

    js實現(xiàn)煙花特效

    這篇文章主要為大家詳細(xì)介紹了js實現(xiàn)煙花效果,實現(xiàn)鼠標(biāo)點擊出現(xiàn)模擬煙花爆炸的特效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03

最新評論

二连浩特市| 长阳| 海宁市| 晋宁县| 达日县| 连平县| 丁青县| 荣成市| 炎陵县| 巫溪县| 巧家县| 隆德县| 尚义县| 延寿县| 盐源县| 平远县| 南郑县| 尼玛县| 平山县| 泾源县| 周至县| 红原县| 康定县| 夏津县| 开鲁县| 大竹县| 通化县| 德江县| 搜索| 封开县| 鲁山县| 肃北| 崇州市| 卓尼县| 鄂托克旗| 紫云| 金乡县| 晋城| 邛崃市| 西昌市| 北川|