使用angularjs指令打开用JQuery编写的屏幕键盘

时间:2013-09-13 09:06:53

标签: jquery angularjs angularjs-directive on-screen-keyboard

我正在尝试在angularJS中编写一个指令,允许在单击按钮或图像时打开此https://github.com/Mottie/Keyboard/屏幕键盘。到目前为止,我基于这个主题做了:Update AngularJS models from a jQuery plugin with a "on change" callback,指令在输入字段点击时打开键盘。任何人都可以帮我吗?

app.directive('keyboard',function(){
  return {
    require : '?ngModel',
    restrict : 'C',
    link : function(scope,element,attrs,ngModelCtrl){
      if(!ngModelCtrl){
        return;
      }

      $(element).keyboard({
        stickyShift: false,
        usePreview: false,
        autoAccept: true,

        change: function(e, kb, el) {
            if(!scope.$$phase && !scope.$root.$$phase)
            {
                scope.$apply(function(){
                    ngModelCtrl.$setViewValue(el.value);
                }); 
            }
        }
    });
    }
  };
});

1 个答案:

答案 0 :(得分:1)

您应该能够在链接功能中绑定jQuery click事件:

element.click(function(){
    element.getkeyboard().reveal();
});