箭头键在bootstrap-combobox中不起作用

时间:2014-09-29 07:47:23

标签: twitter-bootstrap combobox

是否有人在使用Bootstrap-combobox project时遇到此问题?如果我输入前几个字母,下拉列表会显示已过滤的项目列表。现在如果我按下箭头,选择会按原样下降,但是当我进一步向下时,列表不会向上滚动。而是选择超出可见区域。对此有何解决方法?

(下图显示了问题。当您按下DOWN键时,选择将退出视图,列表不会向上滚动。)

Scroll Issue Image

1 个答案:

答案 0 :(得分:0)

我为此做了一个修复,也许不是最好的,但就是这样:

在“bootstrap-combobox.js”中 - 不是缩小版本 - 找到“移动功能”(版本1.1.6中的第317行)并替换“向上箭头键”和“向下箭头键”的情况“有了这个:

      case 38: // up arrow

      var list = $(e.target.nextSibling.children);
      var index = 0;
      for (var i = 0; i < list.length; i++) {
        if ($(list[i]).hasClass('active')) {
            index = i;
        }
      }
      if (index <= (this.$menu.scrollTop()/26)) {
        this.$menu.scrollTop((index-1)*26)
      } 
      e.preventDefault();
      this.prev();
      break;

    case 40: // down arrow
      e.preventDefault();
      this.next();
      var list = $(e.target.nextSibling.children);
      var index = 0;

      for (var i = 0; i < list.length; i++) {
        if ($(list[i]).hasClass('active')) {
            index = i;
        }
      }
      if (index > (this.$menu.scrollTop()/26)+10) {
        this.$menu.scrollTop((index-10)*26)
      }
      break;