我如何改变CSS显示无或块属性使用jQuery?


当前回答

有几种方法可以做到这一点,每种方法都有自己的预期目的。


1)。使用内联,同时简单地为元素分配一列要做的事情

$('#ele_id').css('display', 'block').animate(....
$('#ele_id').css('display', 'none').animate(....

2)。在设置多个CSS属性时使用

$('#ele_id').css({
    display: 'none'
    height: 100px,
    width: 100px
});
$('#ele_id').css({
    display: 'block'
    height: 100px,
    width: 100px
});

3)。动态调用命令

$('#ele_id').show();
$('#ele_id').hide();

4)。如果是div,则在block和none之间动态切换

某些元素显示为内联、内联块或表,这取决于标签名称

$ (' # ele_id ') .toggle ();

其他回答

(function($){
    $.fn.displayChange = function(fn){
        $this = $(this);
        var state = {};
        state.old = $this.css('display');
        var intervalID = setInterval(function(){
            if( $this.css('display') != state.old ){
                state.change = $this.css('display');
                fn(state);
                state.old = $this.css('display');
            }
        }, 100);        
    }

    $(function(){
        var tag = $('#content');
        tag.displayChange(function(obj){
            console.log(obj);
        });  
    })   
})(jQuery);

正确的方法是使用show和hide:

$('#id').hide();
$('#id').show();

另一种方法是使用jQuery css方法:

$("#id").css("display", "none");
$("#id").css("display", "block");

有几种方法可以做到这一点,每种方法都有自己的预期目的。


1)。使用内联,同时简单地为元素分配一列要做的事情

$('#ele_id').css('display', 'block').animate(....
$('#ele_id').css('display', 'none').animate(....

2)。在设置多个CSS属性时使用

$('#ele_id').css({
    display: 'none'
    height: 100px,
    width: 100px
});
$('#ele_id').css({
    display: 'block'
    height: 100px,
    width: 100px
});

3)。动态调用命令

$('#ele_id').show();
$('#ele_id').hide();

4)。如果是div,则在block和none之间动态切换

某些元素显示为内联、内联块或表,这取决于标签名称

$ (' # ele_id ') .toggle ();

Use:

$(#id/.class).show()
$(#id/.class).hide()

这是最好的办法。

如果您想隐藏和显示一个元素,这取决于它是否已经可见,您可以使用 切换,而不是。hide()和。show()

$('elem').toggle();