ios - Angular 指令在 iPhone 4s 上无法正常工作

标签 ios iphone angularjs ionic-framework

我使用常用​​的 ionic 指令将焦点设置到页面加载时的文本区域,该文本区域显示 ionic 键盘,并且它在我测试过的所有设备上都运行良好,除了 iPhone 4s。

HTML

<textarea focus-me></textarea>

JS

.directive('focusMe', function($timeout) {
  return {
    link: function(scope, element, attrs) {
      $timeout(function() {
        element[0].focus();
      }),350;
    }
  };
});

在 iPhone 4s 上,当文本区域失去焦点时,键盘会消失,然后又弹出。在任何其他设备上都不会发生这种情况。

如何在页面加载(以及后续页面加载)时将焦点设置到文本区域,并防止 ionic 键盘在文本区域失去焦点时重新弹出?

最佳答案

调用 $timeout 指令的代码中存在错误。应该是:

.directive('focusMe', function($timeout) {
  return {
    link: function(scope, element, attrs) {
      $timeout(function() {
        element[0].focus();
      }, 350); // correct this
    }
  };
});

关于ios - Angular 指令在 iPhone 4s 上无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33221487/

相关文章:

iphone - 无法找到 iOS 错误访问

iphone - 关闭 UIDocument 后停止自动保存

javascript - 带有 null 值的 AngularJS ngRepeat 过滤器会永久删除 null,为什么?

iphone - 在哪里放置调节 CALayer 动画的代码?

ios - 单击 URL 时 UITextView 崩溃

ios - 如何使用 Swift 限制 MKMapView 最大缩放级别

iphone - 双击选择器多次触发

iphone - 如何为 UIButton 添加操作

javascript - Angular Material 1/md-virtual-repeat 选择滚动

javascript - 下载后损坏的 XLSX 文件