如圖所示點(diǎn)擊表單會(huì)出現(xiàn)一個(gè)彈出層,彈出層內(nèi)容可以用鍵盤(pán)的上下左右鍵位控制,我自己寫(xiě)的代碼有問(wèn)題,不管點(diǎn)擊鍵盤(pán)的向上鍵還是向下鍵都會(huì)返回第一個(gè),而不是依次的關(guān)系。我用的插件是基于jq的easyui我寫(xiě)的代碼如下?function?bindEvents(target){
????????var?opts?=?$.data(target,?'combo').options;
????????var?combo?=?$.data(target,?'combo').combo;
????????var?panel?=?$.data(target,?'combo').panel;
????????var?input?=?combo.find('.combo-text');
????????var?arrow?=?combo.find('.combo-arrow');
?????????
????????$(document).unbind('.combo');
????????combo.unbind('.combo');
????????panel.unbind('.combo');
????????input.unbind('.combo');
????????arrow.unbind('.combo');
?????????
????????if?(!opts.disabled){
????????????$(document).bind('mousedown.combo',?function(e){
????????????????$('div.combo-panel').panel('close');
????????????});
????????????panel.bind('mousedown.combo',?function(e){
????????????????return?false;
????????????});
?????????????
????????????input.bind('focus.combo',?function(){
????????????????showPanel(target);
????????????}).bind('mousedown.combo',?function(e){
????????????????e.stopPropagation();
????????????}).bind('keyup.combo',?function(e){
????????????????switch(e.keyCode){
????????????????????case?37:???//?left
????????????????????case?38:???//?up
????????????????????????opts.selectPrev.call(target);
????????????????????????break;
????????????????????case?39:???//?right
????????????????????case?40:???//?down
????????????????????????opts.selectNext.call(target);
????????????????????????break;
????????????????????case?13:???//?enter
????????????????????????opts.selectCurr.call(target);
????????????????????????break;
????????????????????case?27:???//?esc
????????????????????????hidePanel(target);
????????????????????????break;
????????????????????default:
????????????????????????if?(opts.editable){
????????????????????????????opts.filter.call(target,?$(this).val());
????????????????????????}
????????????????}
????????????????return?false;
????????????});
?????????????
????????????arrow.bind('click.combo',?function(){
????????????????input.focus();
????????????}).bind('mouseenter.combo',?function(){
????????????????$(this).addClass('combo-arrow-hover');
????????????}).bind('mouseleave.combo',?function(){
????????????????$(this).removeClass('combo-arrow-hover');
????????????});
????????}
????}
鍵盤(pán)控制內(nèi)容移動(dòng)
你明眸中的海
2016-09-26 19:09:33