超过左栏高,左栏宽变小,再上拉宽又比加载时大,用审查检查发现当超过sideHeight高,cssText“替换”了左栏CSS属性为fixed;right:0;top:-1609。再上拉由于else里只是“更改”position属性,所以遗留了 right;top属性导致的
方案:if与else后跟的语句都运用cssText进行替换
if是style.cssText='width:33%;position:fixed;right:0;top:'+(-(sideHeight-screenHeight))+'px'
else是style.cssText='width:33%;float:right'
方案:if与else后跟的语句都运用cssText进行替换
if是style.cssText='width:33%;position:fixed;right:0;top:'+(-(sideHeight-screenHeight))+'px'
else是style.cssText='width:33%;float:right'
2017-03-18
右侧边栏滚动到妈妈专场-宽度按出现跳动的解决:
if(scrollHeight+screenHeight>sideHeight){
//右侧边栏的高度-右侧边栏可视区域的高度
domSider.style.position="fixed";
domSider.style.right=0+'px';
domSider.style.top=-(sideHeight-screenHeight)+'px';
}else{
//设为默认值
domSider.style.position='static';
}
if(scrollHeight+screenHeight>sideHeight){
//右侧边栏的高度-右侧边栏可视区域的高度
domSider.style.position="fixed";
domSider.style.right=0+'px';
domSider.style.top=-(sideHeight-screenHeight)+'px';
}else{
//设为默认值
domSider.style.position='static';
}
2017-03-01
最新回答 / 间歇性狂躁症7
if (windowHeight > sideHeight) { $('#J_BdSide').css({ 'position' : 'fixed', right : '0px', top : 0 });小于的话就把top : -(sideHeight - $(window).height())改成top:0
2017-01-06
raw JavaScript没有处理跨浏览器的函数,所以手写了一个addEvent事件,但是感觉少了一点var addEvent = function (obj, event, fn) {
if (obj.addEventListener) {obj.addEventListener(event, fn, false);//DOM2级事件处理
} else if (obj.attachEvent) {obj.attachEvent('on' + event, fn);//IE事件处理
} else {obj['on' + event] = fn;//DOM 0级事件处理
}
};详见高设3rd
if (obj.addEventListener) {obj.addEventListener(event, fn, false);//DOM2级事件处理
} else if (obj.attachEvent) {obj.attachEvent('on' + event, fn);//IE事件处理
} else {obj['on' + event] = fn;//DOM 0级事件处理
}
};详见高设3rd
2016-12-30