jQuery虚拟键盘和向下滑动

时间:2012-10-05 21:56:07

标签: javascript jquery css

我使用了jQuery虚拟键盘,但是当我点击密码字段几次键盘向下滑动时我发现问题,我检查了CSS并且我没有找到解决方案。 有人有想法吗?

这是链接:

http://www.devcurry.com/2010/12/jquery-virtual-keyboard-with-qwerty.html

谢谢。

1 个答案:

答案 0 :(得分:1)

我试过在这个小提琴中使用它并且它有效http://jsfiddle.net/TUAHC/。关键的区别在于我使用了最新版本的jQuery,1.8.2而不是您发布的演示中使用的1.4.4版本。升级jQuery版本似乎解决了这个问题。

修改

似乎插件中使用的jQuery UI Position实用程序存在一个问题,每当文本输入被聚焦时调用它,并且它似乎只在父元素上有填充/边距时才显示出来。修复它的方法是修改插件并将插件的定位代码移到焦点事件处理程序之外。所以找到这段代码(插件js文件的第141行):

element.focus(function() {
  var element = jQuery(this)
  jQuery('.ui-keyboard').hide();
  previewInput.val(element.val());

  keyboard.position({
    of: element,
    my: "left top",
    at: "left top",
    collision: "fit",
  }).show();

  previewInput.scrollTop(previewInput.attr('scrollHeight')).focus();
});

将代码更改为:

keyboard.position({
  of: element,
  my: "left top",
  at: "left top",
  collision: "fit",
});

element.focus(function() {
  var element = jQuery(this)
  jQuery('.ui-keyboard').hide();
  previewInput.val(element.val());

  keyboard.show();

  previewInput.scrollTop(previewInput.attr('scrollHeight')).focus();
});

这似乎在我的测试中http://jsfiddle.net/TUAHC/2/