搭建自己的base.js(2)-其他事件方法
获取鼠标按键
// 获取鼠标按键, getButton:function(event) { //DOM,先检测是否支持DOM鼠标事件 if(document,implementation.hasFeature("MouseEvents","2.0")) { return event.button; //0主键,1滚轮,2次键 } else { //IE8及之前 switch(event.button) { case 0: case 1: case 3: case 5: case 7: return 0; //都按下了主键,有些结合其他键同时按 case 2: case 6: return 2; //次键 case 4: return 1; //滚轮 } } },
获取滚轮滚动差
// 获取鼠标滚轮 getWheelDelta:function(event) { if(event.wheelDelta) { return (event.wheelDelta); //120的倍数,滚轮向上滚为正,IE,Chrome } else { //firefox方向相反,且滚一次是3的倍数 return -event.detail * 40; } },
获取键盘编码
// 获取键盘编码 getCharCode:function(event) { if(typeof event.charCode == 'number') { return event.charCode; //IE9,Firefox,Chrome } else { return event.keyCode; //IE8 } },
获取剪切板文本
// 获取剪切板文本 getClipboardText:function(event) { //IE保存在window中, var clipboardData = (event.clipboardData || window.clipboardData); return clipboardData.getData('text'); },
设置剪切板内容
// 设置剪切板内容 setClipboardText:function(event,value) { if(event.clipboardData) { //Chrome,Safari,设置成功返回true,text/plan为数据类型 return event.clipboardData.setData('text/plain',value); } else if (window.clipboardData) { return window.clipboardData.setData('text',value); //IE } }