我的页面上有一个<div>
元素(假设它有.myelement
类)。我有一个操纵元素的第三方脚本,可以将其可见性样式属性更改为“visibility: visible
”。
我需要检查.myelement的可见性是否为:visible
,如果是,则触发jQuery .fadeIn()
函数。
答案 0 :(得分:5)
我认为你的意思是检查元素是否可见,如果不,则将其淡入。在页面上已经可见的元素中没有任何淡入淡出。如果是这种情况,你应该这样做:
var $element = $('.myelement');
if ($element.is(':visible')) {
element.fadeOut();
} else {
element.fadeIn();
}
答案 1 :(得分:0)
尝试使用.css("property")
函数提取属于visible
属性的样式值,然后执行常规比较,如果条件的计算结果为true,则调用fadeIn
,
var elem = $(".myelement");
if(elem.css("visibility") === "visible"){
elem.fadeIn();
}
答案 2 :(得分:0)
你可以使用jquery css函数
//first cache your element
var elm = $(".myelement");//better to use an id if you are targeting a specific element
if (elm.css("visibility") === "visible"){
elm.fadeIn();
}else{
elm.fadeOut();
}
答案 3 :(得分:0)
我认为在启动fadeIn动画之前你必须在元素上设置display:none,所以fadeIn函数会轻柔地显示你的div。 在jquery中,你可以使用hide()
来完成它试试这个片段,对我而言
jQuery(document).ready(function(){
var $myel = $(".myelement");
if ($myel.css("visibility") === "visible"){
$myel.hide();
$myel.fadeIn("slow");
}
});