【问题标题】:How to remove an css style from a div ?如何从 div 中删除 css 样式?
【发布时间】:2012-08-08 16:43:58
【问题描述】:

我正在使用jQuery Autosize 为 textarea 元素启用自动高度。

当我专注于 textarea 时效果很好。
如果我模糊纹理,我想删除纹理的height 以将高度调整为默认值。

我想知道我应该做什么on blur 操作才能将文本区域保持为默认值。

这是我尝试在 javascript 控制台上执行的操作以测试我的脚本。

当我加载页面时,textarea 处于模糊状态:

$('#announcement').css('height'); // "36px"

如果我关注文本区域:

$('#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 属性。
有什么想法吗?

【问题讨论】:

  • 高度不是属性...

标签: javascript jquery css replace


【解决方案1】:

您可以使用以下命令直接清除元素上的style.height 集:

$('#announcement').css('height', '');

在此处查看工作示例:http://jsfiddle.net/jfriend00/LXspR/

在您的示例中,removeAttr() 适用于属性,而不是像 style.height 这样的样式属性。 .css("height") 在 style.height 上工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-01
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 2010-10-22
    • 1970-01-01
    • 2018-09-26
    • 2021-08-19
    相关资源
    最近更新 更多