我正在使用jQuery Autosize
为textarea元素启用自动高度。
当我专注于textarea时,效果很好。
如果我模糊了纹理,我想将height
移除到纹理以将高度调整为默认值。
我想知道应该做什么on blur
操作,以便将textarea保持为默认值。
以下是我试图在javascript控制台上测试我的脚本。
当我加载页面时,textarea处于模糊状态:
$('#announcement').css('height'); // "36px"
如果我关注textarea:
$('#announcement').css('height'); // "90px"
$('#announcement').removeAttr('height');
$('#announcement').css('height'); // "90px"
// why do I continue to get this value even if I removed the Attribute height?
我知道我可以简单地修复我的问题,简单地进行模糊操作
$('#announcement').css('height', '36px');
但我想避免在javascript代码中设置css属性
有什么想法吗?
答案 0 :(得分:3)
您可以使用以下内容直接清除元素上的style.height
:
$('#announcement').css('height', '');
请参阅此处的工作示例:http://jsfiddle.net/jfriend00/LXspR/
在您的示例中,removeAttr()
适用于属性,而非style.height
等样式属性。 .css("height")
适用于style.height
。