是的 可以学别的系统讲解jq的视频
if (windowHeight > sideHeight) {
$('#J_BdSide').css({
'position' : 'fixed',
right : '0px',
top : 0
});
小于的话就把top : -(sideHeight - $(window).height())改成top:0
没有支持的函数
因为是直接在html结构最底下写的
应该是screenHeight,老师写错了,后来改了
监听windows的加载事件,和监听用户windows的窗口大小的事件,让窗口大小随之变化。应该可以这么理解吧
fixed固定定位,参考的是屏幕内的网页窗口本身。而视图本身是固定的,所以即使浏览器滚动条滚动了,位置也没发生变化
absolute绝对定位,是参考最接近的一个具有定位属性的父包含块,滚动条滚动了,其位置会发生变化. absolute和relative一般一起用。
你是否将样式写在了行间?
jWindow.scroll(function(){
//滚动高度
var scrollHeight=jWindow.scrollTop();
//屏幕高度
var screenHeight=jWindow.height();
//右侧边栏高度
var fixedHeight=$('.fixed').height();
var left=$('.fixed').offset().left;
if(scrollHeight+screenHeight>fixedHeight){
$('.fixed').css({'position':'fixed','top':-(fixedHeight-screenHeight),'left':left});
}
else{
$('.fixed').css({'position':'static','left':0,'top':0});
}
});
'top':-(fixedHeight-screenHeight) //当滚动高度+屏幕高度>右侧边栏高度时,右侧边栏的为固定定位,定位top为剩下的高度。
好吧,你方法也可以!
出现跳跃 domSider.style.cssText = 'position:fixed; right:0px; top:'+(-(sideHeight-screenHeight))+'px';改成domSider.style.cssText += 'position:fixed; right:0px; top:'+(-(sideHeight-screenHeight))+'px';因为cssText会把之前的样式清空,所以要+=
你想啊,最终top距离屏幕上边有固定的高度,所以需要加个负号。
错了,应该是笔记才对。