如何设置"style = display:none;" 使用jQuery的attr方法?

35 html javascript css jquery show-hide

以下是msform我想要将style ="display:none"属性应用于id的表单.

<form id="msform" style="display:none;">
</form>
Run Code Online (Sandbox Code Playgroud)

此外,应在添加"style=display:none;"属性之前执行检查.也就是说,如果它已经像上面的代码一样设置,则不应再次设置.

但如果它没有设置那么应该.

我该怎么做到这一点?请帮我.

Gon*_*ing 53

为什么不用$('#msform').hide()?现场jQuery的背后hide,show只是设置display: nonedisplay: block.

hide() 如果已隐藏,则不会更改样式.

根据下面的评论,您将删除所有样式removeAttr("style"),在这种情况下,hide()立即调用.

例如

$("#msform").removeAttr("style").hide();
Run Code Online (Sandbox Code Playgroud)

这样做的反向当然是show()如在

$("#msform").show();
Run Code Online (Sandbox Code Playgroud)

或者,更有趣的是toggle(),哪些有效翻转hide()show()基于当前状态.


nic*_*ael 37

除了hide()在其他答案中提到的,您可以使用css():

$("#msform").css("display","none")
Run Code Online (Sandbox Code Playgroud)

  • 使用21个字符而不是6个"hide()"将是我唯一的反对意见(毕竟这是一个网页):) (5认同)

Sur*_*tha 7

$(document).ready(function(){
var display =  $("#msform").css("display");
    if(display!="none")
    {
        $("#msform").attr("style", "display:none");
    }
});
Run Code Online (Sandbox Code Playgroud)

  • 请在答案中添加一些解释. (4认同)