在我尝试构建一个简单的跨浏览器扩展文本区域时,我发现所有插件接缝都过于混乱。
我开发了这个:
$(document).ready(function() {
$('textarea').keyup(function() {
var txtheight = this.scrollHeight;
$(this).height(txtheight)
});
$('textarea').keyup();
});
它正在产生意想不到的结果。
在 FIREFOX 上它正在工作,但如果我从 textarea 中删除行,它的大小不会减小。
在 CHROME 上,按下任何键都会导致添加另一个行高。
这非常令人困惑,因为如果我将代码更改为:
$(document).ready(function() {
$('textarea').keyup(function() {
var txtheight = this.scrollHeight;
alert(txtheight);
});
$('textarea').keyup();
});
警报每次都会在两个浏览器上正确获取数字。这到底是怎么回事?