javascript - 长按按键时自动调整tinymce的大小

标签 javascript angularjs tinymce tinymce-4

遇到连续按下某些字符键时tinymce不会自动调整大小的问题。尽管离开按键后高度会调整。

有没有办法在按键事件上自动调整tinymce的大小。 我正在使用 angularjs ui-tinymce。

最佳答案

ui-tinymce 项目没有提供任何处理手动调整大小的服务。 假设有一个(名为 $tinyInstance),你可以这样做:

是的,你可以这样做:

<textarea 
  data-ui-tinymce 
  data-ng-keypress="resizeTmce()"
  data-ng-model="tinymce"
 >
</textarea>

function yourCTRL($scope,$tinyInstance){
  $scope.resizeTmce = $tinyInstance.resize;
}

但事实并非如此。

所以你有两个解决方案。 一个肮脏的解决方案:

<textarea 
  id = "tinymce"
  data-ui-tinymce 
  data-ng-keypress="resizeTmce()"
  data-ng-model="tinymce"
 >
</textarea>

function yourCTRL($scope){
  $scope.resizeTmce = function(){
     $('#tinymce').resize() ...
  } ;
}

第二种遵循 Angular 代码设计的正确方法是创建一个指令来处理这项工作。

不要使用 jQuery 来调整 DOM 元素的大小,而是查看 the tinymce API about resizable

目标将是您的模板,看看这个:

<textarea 
  data-ui-tinymce 
  data-ui-tiny-resize-onkeypress
  data-ng-model="tinymce"
 >
</textarea>

或者,第三种解决方案, fork github 存储库并提交 PR 以在按键时自动调整大小,而不是在按键离开时自动调整大小,如果您认为可以的话。 如果没有,feel free to post an issue on the project

关于javascript - 长按按键时自动调整tinymce的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28833405/

相关文章:

javascript - 从 ASP.NET 中的操作方法检索 Json 对象

tinymce - 在 PHP 站点的 TinyMCE 内容编辑器中插入和显示图像

javascript - 将 Canvas 的一部分裁剪到另一个 Canvas 对象中

Javascript 数组变量在循环中丢失

javascript - 如何在 angularjs 中通过 npm 安装 angular-ui-bootstrap?

javascript - 自动滚动曾经有效,但现在不起作用

javascript - 在js文件中嵌入laravel路由

JavaScript 原型(prototype)

javascript - 为什么我不在 Angular Controller 中注入(inject)服务?

javascript - 如何在 JavaScript 中强制重新加载当前页面?