js实现的仿Photoshop鼠标滚轮控制输入框取值(修正兼容Chrome)
作者:bea
一直很想做这个效果,原理是监听鼠标滚轮事件;可将此效果继续发散到其他应用上,如图片缩放,页面缩放等。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>
一直很想做这个效果,原理是监听鼠标滚轮事件;可将此效果继续发散到其他应用上,如图片缩放,页面缩放等。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>滚轮效果 -http://www.51obj.cn/</title>
</head>
<body>
<input type="text" id="txt" value="0" />
<script type="text/javascript">
var oTxt=document.getElementById("txt");
/***********************
* 函数:判断滚轮滚动方向
* 参数:event
* 返回:滚轮方向 1:向上 -1:向下
*************************/
var scrollFunc=function(e){
var direct=0;
e=e || window.event;
if(e.wheelDelta){
direct=e.wheelDelta>0?1:-1;
}else if(e.detail){
direct=e.detail<0?1:-1;
}
ScrollText(direct);
}
/****************************
* 函数:控制文本框文字
* 参数:滚轮方向(由scrollFunc返回)
* 返回:无
*******************************/
function ScrollText(arg){
oTxt.focus();
var _value=parseInt(oTxt.value);
if(arg>0){
_value++;
}else{
_value--;
}
oTxt.value=_value;
oTxt.select();//选取效果
}
/*注册事件*/
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}//W3C
window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome
</script>
</body>
</html>
[Ctrl+A 全选 注:
如需引入外部Js需刷新才能执行]
已经ff、ie、opera、chrome测试;其中45~47行中若使用
代码如下:
/*注册事件*/
if(document.attachEvent){
document.attachEvent('onmousewheel',scrollFunc);
}else if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}
则Chrome不起作用,将其更改为
代码如下:
/*注册事件*/
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}//W3C
window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome
即可。
作者:王洪剑(51obj)
有用 | 无用
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>滚轮效果 -http://www.51obj.cn/</title>
</head>
<body>
<input type="text" id="txt" value="0" />
<script type="text/javascript">
var oTxt=document.getElementById("txt");
/***********************
* 函数:判断滚轮滚动方向
* 参数:event
* 返回:滚轮方向 1:向上 -1:向下
*************************/
var scrollFunc=function(e){
var direct=0;
e=e || window.event;
if(e.wheelDelta){
direct=e.wheelDelta>0?1:-1;
}else if(e.detail){
direct=e.detail<0?1:-1;
}
ScrollText(direct);
}
/****************************
* 函数:控制文本框文字
* 参数:滚轮方向(由scrollFunc返回)
* 返回:无
*******************************/
function ScrollText(arg){
oTxt.focus();
var _value=parseInt(oTxt.value);
if(arg>0){
_value++;
}else{
_value--;
}
oTxt.value=_value;
oTxt.select();//选取效果
}
/*注册事件*/
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}//W3C
window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome
</script>
</body>
</html>
[Ctrl+A 全选 注:
如需引入外部Js需刷新才能执行]
已经ff、ie、opera、chrome测试;其中45~47行中若使用
代码如下:
/*注册事件*/
if(document.attachEvent){
document.attachEvent('onmousewheel',scrollFunc);
}else if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}
则Chrome不起作用,将其更改为
代码如下:
/*注册事件*/
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}//W3C
window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome
即可。
作者:王洪剑(51obj)
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- jQuery AnythingSlider滑动效果插件
- javascript 函数速查表
- js 键盘记录实现(兼容FireFox和IE)
- javascript 同时在IE和FireFox获取KeyCode的代码
- JQuery Dialog(JS 模态窗口,可拖拽的DIV)
- jquery 图片Silhouette Fadeins渐显效果
- 选择TreeView控件的树状数据节点的JS方法(jquery)
- jquery 应用代码 方便的排序功能
- jquery1.4后 jqDrag 拖动 不可用
- javascript小数计算出现近似值的解决办法
- jquery 插件实现图片延迟加载效果代码
- Lazy Load 延迟加载图片的 jQuery 插件
- jquery.lazyload 实现图片延迟加载jquery插件
- 利用jQuery 实现GridView异步排序、分页的代码
- javascript contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
- 使用SyntaxHighlighter实现HTML高亮显示代码的方法
- JavaScript学习笔记(十七)js 优化
- javascript 实现的完全兼容鼠标滚轴缩放图片的代码
- jQuery生成asp.net服务器控件的代码