事实用以下检测代码来检测时,是支持Keyup的function detectEventSupport(eventName) { var tempElement = document.createElement('div'),
isSupported;
eventName = 'on' + eventName;
isSupported = (eventName in tempElement); // 使用第一种方式
// 如果第一种方式行不通,那就来看看它是不是已知事件类型
if (!isSupported) {
tempElement.setAttribute(eventName, 'xxx');
isSupported = typeof tempElement[eventName] === 'function'; if(typeof tempElement[eventName] != 'undefined'){
tempElement.removeAttribute(eventName);
}
} // 清除掉动态创建的元素,以便内存回收
tempElement = null; // 返回检测结果
return isSupported;
}但实际上使用时并不会触发。因此想模拟keyup事件var mock = null;
addEvent(document, 'keydown', function(e) {
keydownHandler(e); if (mock) clearTimeout(mock);
mock = setTimeout(function() {
keyupHandler(e);
}, 200);
});但是这种方法的效果不是很好,请问还有没有更好的方法
添加回答
举报
0/150
提交
取消