JavaScript邮箱系统开发(七)

一、显示顶部导航时作位置判断

//显示顶部导航时作位置判断,点击左边菜单、上一tab、下一tab时公用
function showTab(li) {
   if(li.length) {
   var ul = $('#B_history'),
       li_offset = li.offset(),
       li_width = li.outerWidth(true),
       //右边按钮的界限位置
       next_left = $('#J_next').offset().left - 9,
       //左边按钮的界限位置
       prev_right = $('#J_prev').offset().left + $('#J_prev').outerWidth(true);
         //如果将要移动的元素在不可见的右边,则需要移动
         if(li_offset.left + li_width > next_left) {
           //计算当前父元素的右边距离,算出右移多少像素
           var distance = li_offset.left + li_width - next_left;
	       ul.animate({left:'-='+distance},200,'swing');
	}  //如果将要移动的元素在不可见的左边,则需要移动
	else if(li_offset.left < prev_right)
	{
	   //计算当前父元素的左边距离,算出左移多少像素
	   var distance = prev_right - li_offset.left;
	   ul.animate({ left:'+='+distance },200,'swing');
	}
     li.trigger('click');
   }
}


你可能感兴趣的:(JavaScript邮箱系统开发(七))