jquery更改div height临时/直到用户点击其他任何地方

时间:2013-04-11 22:54:09

标签: jquery css temporary

我有一个#content div,其默认css高度为: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样式设置为临时?

1 个答案:

答案 0 :(得分:0)

此项目的目标受众是什么?如果它是所有现代浏览器(IE9 +),您总是可以使用CSS伪选择器:not()

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

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

然后,您不必在服务器脚本中明确设置.heightAuto类。