[英]Div not getting fixed on scrolling
向下滾動時,我試圖將div
固定在頂部。 但是以某種方式代碼無法正常工作...
請檢查以下代碼:
<div id="column-left" class="column_absolute">
My name is Peter
</div>
<script type="text/javascript">
function window_onload() {
alert("hi");
window.addEventListener("scroll", navbar_reset_top, false);
}
var navbar_top = 100;
function navbar_reset_top() {
var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
if (scrollTop > navbar_top && column-left.className === "column_absolute") {
document.getElementById("column-left").className="column_fixed";
}
else if (scrollTop < navbar_top && column-left.className === "column_fixed") {
document.getElementById("column-left").className="column_absolute";
}
}
</script>
<style type="text/css">
.column_absolute {
width: 220px;
padding: 0px 15px 0 0px;
border-right: 1px solid #eee;
margin-left:20px;
position:absolute;
}
.column_fixed {
width: 220px;
position:fixed;
margin-top:0px;
padding: 0px 15px 0 0px;
border-right: 1px solid #eee;
}
</style>
</head>
<body onload="javascript:window_onload()">
當我向下滾動時,上面提到的div
應該是固定的。
請檢查代碼並更正我...
除了具有undefined variable column-left
之外,其他所有代碼都可以正常工作。 可能您錯過了定義它的時間。
演示: http : //jsfiddle.net/GCu2D/137/
function window_onload() {
alert("hi");
document.addEventListener("scroll", navbar_reset_top, false);
}
var navbar_top = 100;
function navbar_reset_top() {
var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
var column_left = document.getElementById("column-left");
if (scrollTop > navbar_top && column_left.className === "column_absolute") {
document.getElementById("column-left").className = "column_fixed";
} else if (scrollTop < navbar_top && column_left.className === "column_fixed") {
document.getElementById("column-left").className = "column_absolute";
}
}
我用column_left
而不是column-left
div的ID為column_fixed。 您應該使用#insead of。 在CSS類中使用ID選擇器。
#column_fixed
{
width: 220px;
position:fixed;
margin-top:0px;
padding: 0px 15px 0 0px;
border-right: 1px solid #eee;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.