jquery 临时更改 div 高度/直到用户点击其他地方

标签 jquery css temporary

我有一个带有默认 css 高度的 #content div:auto。单击按钮并提交表单后,我将 content-div 的高度更改为 300:

if(msg == 'OK')
{
    result = '<div class="notification_ok">Thank you.</div>';    
    $("#content").height(300);
}

但它应该只在用户位于该特定页面时具有该高度,并且当他单击任何其他链接时,高度应再次设置为“自动”。我考虑过添加 css 类

.heightAuto { height: auto; }
.height300 { height: 300; }

然后说

$("#content").toggleClass(heightAuto height300);

但后来我认为我必须向每个链接添加一个 class="heightAuto",因为我正在将我的链接动态加载到我的 content-div 中,以便不必每次都重新加载页面。有没有更好的方法使用 jquery 或临时设置 css 样式?

最佳答案

这个元素的目标受众是什么?如果是所有现代浏览器(IE9+),你总是可以使用 CSS 伪选择器 :not():

http://www.w3schools.com/cssref/sel_not.asp

:not(.height300){
    height:auto;
}

那么您就不必在服务器脚本中显式设置 .heightAuto 类。

关于jquery 临时更改 div 高度/直到用户点击其他地方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15960261/

相关文章:

javascript - jQuery 拖放功能不起作用

javascript - 打字时改变单词的颜色

javascript - 使用 KnockoutJS 和单个 AJAX 调用实现无限滚动

javascript - 如何使用原型(prototype)获取背景图像的 x 或 y 位置?

oracle - INSERT 不适用于 PL/SQL block 中的 GLOBAL TEMPORARY TABLE

sql - 创建具有固定值的临时表

javascript - Bootstrap 模式关闭时,Firefox 18中没有触发Transitionend事件

javascript - angularjs在没有jquery的情况下将css属性添加到元素

jquery - 循环 Div(jQuery 轮播)

rust - 为什么临时借用是合法的?