之前给公司开发过一个IT设备管理系统,UI用的是easyui,因为之前一直用的是搜狗浏览器跟IE,所以一直没发现其中的combobox跟火狐浏览器的兼容问题
用火狐浏览器时,在combobox控件上输入关键字后,你会发现当你输入一个中文后,下拉列表是不会帮你筛选出数据的,你再随便按一下键盘,这时combobox控件才会进行数据的筛选,百度过,说是keyup跟keydown事件的问题。后面按照百度上的方法,在jquery.easyui.min.js源文件上修改,我的是1.4.3版本的,找到12556行
如下面所示,将keydown改成keyup就可以解决问题了
$.fn.combo.defaults=$.extend({},$.fn.textbox.defaults,{inputEvents:{click:_952,keydown:_956,paste:_956,drop:_956},panelWidth:null,
可能有些人不太修改源代码,我就是这样。
那可以用这种方式,看起来优雅一点
if($.fn.combobox){
//为了兼容火狐浏览器
$.fn.combobox.defaults.inputEvents.keyup=$.fn.combobox.defaults.inputEvents.keydown;
$.fn.combobox.defaults.inputEvents.keydown=function(){};
}