.trigger() 不触发自动调整事件

.trigger() not triggering autosize event

您好,我有一个使用 autosize 文本字段的项目,如果字段由脚本编辑,则需要使用 'autosize:update' 触发器更新这些字段,但我在获取时遇到了一些问题这个工作。如果我尝试输入:

$('.auto-size').trigger('autosize:update')

当需要更新时进入控制台,没有任何反应,我不确定为什么?

我是 javascript/jquery 的新手,非常感谢任何帮助。

如果 autosize:update 是 css 属性,它可能是,但我无法在网上找到它。但如果是,

$(".auto-size").trigger(function(){
    $(".auto-size").css("autosize","update");
});

如文档中所述,您可以使用:

autosize.update($('.auto-size'));

或者您可以使用:

   var evt = document.createEvent('Event');
   evt.initEvent('autosize:update', true, false);
   $('.auto-size').get(0).dispatchEvent(evt);

一个例子:

// initialiaze the field
autosize($('.auto-size'));


// add new text to textarea and update!
$('#myBtn').on('click', function(e) {
  var ele = $('.auto-size');
  ele.text(ele.text() + 'This is a new line.\n');

  autosize.update(ele);
  
  // Dispatch a 'autosize:update' event to trigger a resize:
  //var evt = document.createEvent('Event');
  //evt.initEvent('autosize:update', true, false);
  //$('.auto-size').get(0).dispatchEvent(evt);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://rawgit.com/jackmoore/autosize/master/dist/autosize.min.js"></script>


<textarea class="auto-size"></textarea>

<button id="myBtn">Click Me</button>