jQuery元素屏幕可见性

时间:2014-06-30 02:49:35

标签: javascript jquery html css

我正在尝试使用以下插件来确定元素是否在屏幕上可见,然后我想在其上使用jQuery效果:

http://www.teamdf.com/web/194/jquery-element-onscreen-visibility

如果鼠标悬停在该区域上,我能够使效果正常工作,但现在我希望用户在鼠标不悬停在div区域的情况下体验效果。

现在我对Java的经验比jQuery更多,所以我不知道条件语句的工作方式是否相同。我一直在网上进行研究,并且所有的插件都没有给出一个确切的例子,所以我尝试了以不同的方式自己尝试。我也试图在这个例子中最小化CSS并且只使用jQuery。 Netbeans没有给出这个代码错误,但它仍然无效。请帮我提供这项任务的指导..我的代码如下:

<script>
if($('#pledge').visible(true)){

    $('#projectone').stop(true, true).fadeIn({ duration: 700, queue: false }).css('display', 'none').slideDown(700);   
    $('#projecttwo').stop(true, true).fadeIn({ duration: 700, queue: false }).css('display', 'none').slideDown(700);
}

else

   {
    $('#projectone').hide("slide",{direction:"left"},1000);
    $('#projecttwo').hide("slide",{direction:"right"},1000);

   }
</script>

2 个答案:

答案 0 :(得分:1)

jQuery允许您以下列方式检查元素是否可见

$(element).is(":visible") 

尝试,

<script>
if($('#pledge').is(":visible")){
    $('#projectone').stop(true, true).fadeIn({ duration: 700, queue: false }).css('display', 'none').slideDown(700);   
    $('#projecttwo').stop(true, true).fadeIn({ duration: 700, queue: false }).css('display', 'none').slideDown(700);
} else  {
    $('#projectone').hide("slide",{direction:"left"},1000);
    $('#projecttwo').hide("slide",{direction:"right"},1000);
   }
</script>

答案 1 :(得分:0)

if ( $(element).css('display') == 'none' ){
       // element is hidden
}