【发布时间】:2014-04-03 18:18:39
【问题描述】:
我正在尝试创建一个编辑页面,用户可以在其中编辑他的内容在一个调整大小以适应内容的文本区域中,我正在使用这个插件来做到这一点:http://www.jacklmoore.com/autosize/
但是当我访问编辑页面时,textarea 不会调整大小以适应内容,只有在我手动刷新页面时才会发生这种情况。代码如下:
<template name="postEdit">
<textarea autofocus name="content" type="text" value="">{{content}}</textarea>
</template>
Template.postEdit.rendered = function() {
$('textarea').autosize();
};
我也尝试过使用 Meteor.defer,但它不起作用:
Template.postEdit.rendered = function() {
Meteor.defer(function() {
$('textarea').autosize();
});
};
当我手动刷新页面并且 textarea 最终调整大小时,textarea html 为此发生了变化:
<textarea class="review" name="review" type="text" value="" placeholder="Blablabla" style="overflow: hidden; word-wrap: break-word; resize: horizontal; height: 664px;"></textarea>
我的代码有问题还是我的方法有问题?
谢谢。
【问题讨论】:
-
如果在页面加载的时候在浏览器的控制台输入
$('textarea').autosize();不工作,说明插件加载不正确。 -
感谢您的评论,当我在控制台中输入时,它会打印出这个 , ,但是文本区域不会调整大小
-
当我手动刷新页面并且 textarea 最终调整大小时,textarea html 会为此更改:
-
如果你这样做会发生什么
$('.review').autosize(); -
问题可能是您在镜像元素和预期的文本区域上都触发了调整大小。不知道你..