这篇文章主要介绍了jquery通过扩展select控件实现支持enter或focus选择的方法,通过jQuery针对select空间增加enter及focus选择功能分析了jQuery扩展的相关实现技巧,需要的朋友可以参考下
本文实例讲述了jquery通过扩展select控件实现支持enter或focus选择的方法。分享给大家供大家参考,具体如下:
/*************************************** * @ author jdkleo * @ date 2013/2/27 JQuery SelKeys USAGE: jQuery.selkeys.enter(jQuery("#selcon")); jQuery.selkeys.focus(jQuery("#selcon2")); *****************************************/ (function (jQuery){ this.version = '(beta)(0.0.1)'; this.all = {}; /**---------enter---------**/ this.enter = function(sel){ var flag = 1; var open = function(){ if(flag==1){ sel.get(0).size = sel.get(0).options.length; flag=0; }else{ sel.get(0).size = 1; flag=1; } }; sel.keydown(function(e){ e = e ? e :(window.event ? window.event : null); var code = e.keyCode || e.which || e.charCode; if(code == 13) { open(); return false; } }); sel.blur(function(){ sel.get(0).size=1; flag=1; }); } /**---------focus---------**/ this.focus = function(sel){ var flag = 1; var open = function(){ if(flag==1){ sel.get(0).size = sel.get(0).options.length; flag=0; }else{ sel.get(0).size = 1; flag=1; } }; sel.focus(function(){ open(); return false; }); sel.blur(function(){ sel.get(0).size=1; flag=1; }); sel.keydown(function(e){ e = e ? e :(window.event ? window.event : null); var code = e.keyCode || e.which || e.charCode; if(code == 13) { sel.get(0).size=1; flag=1; return false; } }); } /**---------all---------**/ jQuery.selkeys = this; return jQuery; })(jQuery);
希望本文所述对大家jQuery程序设计有所帮助。
您可能感兴趣的文章: