当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 鼠标滚轮编程

Javascript
javascript下操作css的float属性的特殊写法
javascript之DIV拖动类 支持在FF下拖动,调用简单
Expandable "Detail" Table Rows
用javascript实现给出的盒子的序列是否可连为一矩型
PNGHandler-借助JS让PNG图在IE下实现透明(包括背景图)
JS创建优美的页面滑动块效果 - Glider.js
发一个比较漂亮的选项卡动态增删的效果
可多次使用的仿126邮箱选项卡的源码
javascript仿XP关机效果的弹出窗口功能
JS控制CSS样式的方法
非常漂亮的JS代码经典广告
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
几个不错的自动收缩菜单导航效果
iframe src为图片时的高度自适应的代码
论坛转贴工具中用到的正则表达式学习正则的好例子
用javascript实现的不错的一款网页选项卡
摘自百度的图片轮换效果代码
用javascript实现旋转图片效果的代码
javascript 制作坦克大战游戏初步 图片与代码
比较简单的jquery教程 Easy Ajax with jQuery 中文版全集

Javascript 中的 鼠标滚轮编程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-10   浏览: 326 ::
收藏到网摘: n/a

以前没有注意到这个滚轮,看到这里有一篇说这个的:http://www.javascriptsearch.com/guides/Advanced/articles/JSMouseScrolling.html
我把它转过来了。如果是在实际应用中,有的时候还是蛮有用的。主要是得到滚轮是向上滚还是向下滚。
注释的代码

function handle(delta) {
if (delta < 0)
…;
else
…;
}
/** 事件句柄
*/
function wheel(event){
var delta = 0;
if (!event) /* For IE. */
event = window.event;
if (event.wheelDelta) { /* IE或者Opera. */
delta = event.wheelDelta/120;
/** 在Opera9中,事件处理不同于IE
*/
if (window.opera)
delta = -delta;
} else if (event.detail) { /** 兼容Mozilla. */
/** In Mozilla, sign of delta is different than in IE.
* Also, delta is multiple of 3.
*/
delta = -event.detail/3;
}
/** 如果 增量不等于0则触发
* 主要功能为测试滚轮向上滚或者是向下
*/
if (delta)
handle(delta);
}
/** 初始化 */
if (window.addEventListener)
/** Mozilla的基于DOM的滚轮事件 **/
window.addEventListener('DOMMouseScroll', wheel, false);
/** IE/Opera. */
window.onmousewheel = document.onmousewheel = wheel;

在上面的代码中,handler函数里的代码就是你要写的,它有一个参数-delta,事实上,它只是代码鼠标此刻是向上滚或者是向下滚。如下所示,
uploads/200608/02_013450_deltas.gif
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]