给浏览器绑定鼠标滚动事件(兼容FireFox)
var bs = new Browser();
if(bs.userBrowser() == 'firefox'){
document.body.addEventListener("DOMMouseScroll", test, false);
}else {
document.body.onmousewheel = test;
}
function test() {
alert("---------");
}
代码中用到的Browser对象
/* 浏览器相关 */
var Browser = function() {
this.browserName = navigator.userAgent.toLowerCase();// agent
this.browserVersion = (this.browserName.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [0, '0'])[1];// 浏览器版本
}
Browser.prototype.userBrowser = function(argument) {// 获取浏览器名称--chrome/firefox/ie/safari
if (/msie/i.test(this.browserName) && !/opera/.test(this.browserName)) {
return "ie";
} else if (/firefox/i.test(this.browserName)) {
return "firefox";
} else if (/chrome/i.test(this.browserName) && /webkit/i.test(this.browserName) && /mozilla/i.test(this.browserName)) {
return "chrome";
} else if (/opera/i.test(this.browserName)) {
return "opera";
} else if (/webkit/i.test(this.browserName) && !(/chrome/i.test(this.browserName) && /webkit/i.test(this.browserName) && /mozilla/i.test(this.browserName))) {
return "safari";
} else {
return "";
}
};
给浏览器绑定鼠标滚动事件(兼容FireFox)的更多相关文章
- 在FireFox浏览器上,用stopImmediatePropagation阻止冒泡鼠标滚动事件
楔子 是不是在火狐用stopPropagation不太满意 很久没有笑过又不知为何 既然不快乐又不喜欢这里 不如一路向西用stopImmediatePropagation(其实我对浏览器的兼容性看不顺 ...
- JS鼠标滚动事件
-----------------------------//鼠标滚动事件以下是JS临听鼠标滚动事件 并且还考虑到了各浏览器的兼容----------------------------------- ...
- js监控鼠标滚动事件
//滚动动画 windowAddMouseWheel(); function windowAddMouseWheel() { var scrollFunc = function (e) { e = e ...
- js进阶 12-6 监听鼠标滚动事件和窗口改变事件怎么写
js进阶 12-6 监听鼠标滚动事件和窗口改变事件怎么写 一.总结 一句话总结:滚动事件scroll(),浏览器窗口调整监听resize(),思考好监听对象. 1.滚动事件scroll()的监听对象是 ...
- vue组件添加鼠标滚动事件
在一个组件标签上加鼠标滚动事件,应该写成 @mousewheel.native
- JS实现鼠标滚动事件,兼容IE9,FF,Chrome.
<!-- 废话不多说,直接贴代码 --><script type="text/javascript" src="jquery.min.js"& ...
- 鼠标滚动事件 - onmousewheel
1.Jquery-MouseWheel jquery默认是不支持支持鼠标滚轮事件(mousewheel) jquery MouseWheel下载:https://github.com/jquery/j ...
- js鼠标滚轮事件兼容
JavaScript鼠标滚轮事件 IE6.0首先实现了鼠标的滚轮事件,其良好的交互效果得到认可,随后Opera.chrome.safari等主流浏览器都实现了该效果,不过存在着很大的兼容问题. 大多数 ...
- JavaScript一个鼠标滚动事件的实例
<script type="text/javascript" src="./whenReady.js"></script> <!- ...
随机推荐
- C#对SQL数据库操作类简介:Connection、Command、DataReader、DataSet、DataAdapter
在说C#操作数据库之前需要先说下ADO.NET.ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,用于在以往的Microsoft技术中访问数据.之所以使 ...
- bootstrap插件使用
首先,针对导航栏(单页面导航插件(缓慢跳转)) 引入插件:jquery.singlePageNav.min.js 下载链接:http://pan.baidu.com/s/1jHBaQxg 密码: ...
- 《Spring实战》系列之Bean的装配-Days01
1 自动化装配bean Spring通过两个方面实现对bean的自动装配 1 ) 组件扫描(component scaning):Spring会自动发现Spring上下文中的bean 2 ) 自动装配 ...
- storm shell命令源码分析-shell_submission.clj
当我们在shell里执行storm shell命令时会调用shell_submission.clj里的main函数.shell_submission.clj如下: shell_submission.c ...
- Java异常处理的10个最佳实践
本文作者: ImportNew - 挖坑的张师傅 未经许可,禁止转载! 异常处理在编写健壮的 Java 应用中扮演着非常重要的角色.异常处理并不是功能性需求,它需要优雅地处理任何错误情况,比如资源不可 ...
- 【linux学习-centeros】
1:linux的目录结构: / root —?启动Linux时使用的一些核心文件.如操作系统内核.引导程序Grub等. home —?存储普通用户的个人文件 ftp — 用户所有服务 httpd sa ...
- C#的常量和变量以及其作用域和命名规范
1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须在定义的时候初始化. 语法: const 类型名 常量名=常量表达式 ...
- OC官方文档翻译-Values-and-Collections-值与集合类型
查看全部文档翻译,请浏览https://github.com/L1l1thLY/Programming-with-Objective-C-in-Chinese,blog仅收录本人翻译的两章. 简述 O ...
- 2019前端面试之html5
html5新增特性 语义化标签 表单新特性 视频和音频canva画布 svg画图 地理位置 为鼠标提供的拖放api webwroker storage websocker 常见块级标签 div,p,h ...
- Cogs 465. 挤牛奶
465. 挤牛奶 ★ 输入文件:milk2.in 输出文件:milk2.out 简单对比时间限制:1 s 内存限制:128 MB [问题描述] 三个农民每天清晨5点起床,然后去牛棚给3 ...