Jquery-如何获得样式显示属性“ none/block”

有没有一种方法可以获得 style: display 属性,该属性可以是空的,也可以是块的?

DIV:

<div id="ctl00_MainContentAreaPlaceHolder_cellPhone_input_msg_container" class="Error cellphone" style="display: block;">


<p class="cellphone" style="display: block;">Text</p>


</div>

我知道有一种方法可以确定 DIV 是否隐藏,但是在我的例子中,这个 DIV 是动态注入的,所以它总是显示为可见的 false,因此我不能使用:

$j('.Error .cellphone').is(':hidden')

我能够得到结果“ display: block”使用:

$j('div.contextualError.ckgcellphone').attr('style')

有没有办法只得到值“ block”或“ none”,或者有没有更好或更有效的方法来做到这一点?

414873 次浏览

You could try:

$j('div.contextualError.ckgcellphone').css('display')

If you're using jquery 1.6.2 you only need to code

$('#theid').css('display')

for example:

if($('#theid').css('display') == 'none'){
$('#theid').show('slow');
} else {
$('#theid').hide('slow');
}

this is the correct answer

$('#theid').css('display') == 'none'

You can also use following line to find if it is display block or none

$('.deal_details').is(':visible')

My answer

/**
* Display form to reply comment
*/
function displayReplyForm(commentId) {
var replyForm = $('#reply-form-' + commentId);
if (replyForm.css('display') == 'block') { // Current display
replyForm.css('display', 'none');
} else { // Hide reply form
replyForm.css('display', 'block');
}
}
//animated show/hide


function showHide(id) {
var hidden= ("none" == $( "#".concat(id) ).css("display"));
if(hidden){
$( "#".concat(id) ).show(1000);
}else{
$("#".concat(id) ).hide(1000);
}
}