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


当前回答

(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);

其他回答

用这个:

$("#id").(":display").val("block");

Or:

$("#id").(":display").val("none");
(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);

隐藏:

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

显示:

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

Use:

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

这是最好的办法。

.hide()不工作在Chrome为我。

这是隐藏的方法:

var pctDOM = jQuery("#vr-preview-progress-content")[0];
pctDOM.hidden = true;