我如何改变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");
使用jQuery CSS方法的其他方法:
$("#id").css({display: "none"});
$("#id").css({display: "block"});
在我的例子中,我根据输入元素是否为空来显示/隐藏表单的元素,因此在隐藏元素时,隐藏元素后面的元素被重新定位,占用了它的空间,因此有必要做一个float:这样的元素的元素的左侧。即使使用插件作为依赖,也必须使用float。
$ (" # id ") . css(“显示”,“没有一个”);
setTimeout (() = > { $ (" # id ") . css(“显示”,“没有一个”); },2000) $ (" # id2) . css(“显示”,“没有一个”); < script src = " https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js " > < /脚本> <div id='id'>Hello World!< / div > <div id='id2'>Hello World 2!< / div >
如果默认情况下div的显示是阻塞的,您可以使用.show()和.hide(),或者更简单的.toggle()来在可见性之间切换。