jQuery 實現廣告圖fixed與scroll關聯

html代碼部分:css

<div class="arc_box">
    <div class="arc_left">左側</div>
    <div class="arc_right">
    右側
    <a class="teachers_right_ad mt20">廣告塊</a>
    </div>
</div>

jQuery代碼部分html

$(function(){
	var ad = $(".teachers_right_ad"); //聲明對象
	var ad_f = $(".arc_right");			//對象父元素
	var ad_gf = $(".arc_box");			//對象父元素的父元素
	var offset = ad.offset();
	var box_h = ad.outerHeight(true);
	var h=ad_gf.offset().top+ad_gf.outerHeight()-box_h; //計算觸發ad中止fixed的臨界點
	var hf=ad_gf.offset().top+ad_gf.outerHeight();			//計算觸發ad中止absolute的臨界點
	var hh=ad_gf.height()-ad.outerHeight(true);				//計算adabsolute的top值
	ad_f.css({"position":"relative"});									//給定ad的父元素position relative
	$(window).scroll(function(){
	if($(window).scrollTop()>=offset.top&&$(window).scrollTop()<h){
		ad.css({"position":"fixed","top":"0px"});
	}
	else if($(window).scrollTop()>=h &&$(window).scrollTop()<hf){

		ad.css({"position":"absolute","top":hh+"px"});
	}
	 else {
		ad.css({"position":"static"});
	}
	});
})
相關文章
相關標籤/搜索