小编Tho*_*ius的帖子

jQuery .is(“:visible)绝对位于视口之外的元素

我试图找出这是否是获取具有的div容器的可见性状态的正确方法 position: absolute

我在视口的左侧有一个侧边栏。单击“边栏按钮”时,“边栏”会在可见区域之外进行动画处理。

jQuery的:

$('#sideBarButton').click(function(){
    sidebar = $("#sideBar").outerWidth();
    if(!$("#sideBar").hasClass('outof'))
    {
       $("#sideBar").animate({left: screenW},100).addClass('outof');
       $("#boardContent").animate({width: screenW},200);
       $("#sideBarButton").animate({left: "+=" + (sidebar -3)},100);
    }
    else 
    {
       $("#boardContent").animate({width: bcW}, 50);
       setTimeout(function(){
           $("#sideBar").animate({left: screenW - sidebar}, 200).removeClass('outof');
           $("#sideBarButton").animate({left: "-=" + (sidebar -3)},200);
       }, 120);
    }
    $(this).find('img').toggle();
});
Run Code Online (Sandbox Code Playgroud)

由于sidebar现在根本不可见(对我而言),并且sidebar的左侧位置大于document.width,所以我的问题是我可以像这样获取(sideBar)的可见状态:

if($("#sideBar").is(":visible"))...
Run Code Online (Sandbox Code Playgroud)

或者,还有更好的方法?我的意思是jQuery如何确定某个元素是否可见?

css jquery

5
推荐指数
1
解决办法
947
查看次数

标签 统计

css ×1

jquery ×1