鼠标滚轮事件(兼容火狐)

鼠标滚轮事件改变字体大小

  1. 滚轮事件的兼容性差异有些不拘一格,不是以往的 ie8-派
    和其他派,而是 firefox 派和其他派,‘杯具’的是firefox 3.5+ 却不支持此事件,不过庆幸 firefox3.5+ 中提供了另外一个等同的事件。
  2. “mousewheel” 事件中的 “event.wheeldelta”属性值:返回的值,如果是正值说明滚轮是向上滚动,如果是负值说明滚轮是向下滚动;返回的值,均为 120 的倍数,即:幅度大小 = 返回的值 / 120。
  3. “dommousescroll” 事件中的 “event.detail”属性值:返回的值,如果是负值说明滚轮是向上滚动(与 “event.wheeldelta” 正好相反),如果是正值说明滚轮是向下滚动;返回的值,均为 3 的倍数,即:幅度大小 = 返回的值/3。
//获取元素   页面中有一个id为box的div.
let o_div = document.querySelector('#box');
//记录字体大小和滚动幅度
let font_size = 16;
let detail = null;
//火狐
if(window.addEventListener){
	window.addEventListener('DOMMouseScroll',fnSize,false);
}
//非火狐
window.onmousewheel = function(evt){
	fnSize(evt);
}
//实现功能
function fnSize(evt){
	let e = evt || window.event;
	if(e.wheelDelta){
		detail = e.wheelDelta / 120;
	}else if(e.detail){
		detail = - e.detail / 3;
	}
	//改变字体大小
	if(detail > 0){
		font_size ++;
	}else{
		font_size > 12 ? --font_size : font_size;
	}
	o_div.style.fontSize = font_size + 'px';
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值