Javascript 如何向tumblr主题添加粘性元素?

Javascript 如何向tumblr主题添加粘性元素?,javascript,html,css,tumblr,Javascript,Html,Css,Tumblr,因此,我一直在制作一个基本的tumblr主题(还没有添加帖子或其他内容),我一直在尝试让菜单栏在滚动时保持在顶部,但它不起作用。我不知道是代码错了还是我把JavaScript放错地方了 <!DOCTYPE HTML> <title>Title</title> <style type="text/css"> #container { position:fixed; overflow:scroll; overflow-x:hidden; margin-

因此,我一直在制作一个基本的tumblr主题(还没有添加帖子或其他内容),我一直在尝试让菜单栏在滚动时保持在顶部,但它不起作用。我不知道是代码错了还是我把JavaScript放错地方了

<!DOCTYPE HTML>
<title>Title</title>
<style type="text/css">
#container {
position:fixed;
overflow:scroll;
overflow-x:hidden;
margin-left:375px;
margin-top:88px;
height:475px;
width:500px;
background-color:#ddd;
 }

 *,
*:after,
*::before {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

body {
margin: 0;
font-family: 'Open Sans', 'Helvetica Neue', Arial, Tahoma, sans-serif;
}


#color-1 {
margin: 0 auto;
padding: 1em 1em;
margin: 1em;
text-align: center;

}

#color-1 {
background: #bed0ff;
}


#nav-1 a {
position: relative;
display: inline-block;
margin: 5px 5px;
outline: none;
color: #fff;
text-decoration: none;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: 400;
text-shadow: 0 0 1px rgba(255,255,255,0.3); 
font-size: 1 em;
}

#nav-1 a:hover,
#nav-1 a:focus {
outline: none;
}


#nav-1 a::after {
display: block;

}

#nav-1 a::after {
margin-top: 5px;
width: 0;
height: 2px;
background-color: #fff;
content: '';
opacity: 0;
-webkit-transition: width 0.3s, opacity 0.6s;
-moz-transition: width 0.3s, opacity 0.6s;
transition: width 0.3s, opacity 0.6s; 

}

#nav-1 a:hover::after,
#nav-1 a:focus::after {
opacity: 1;
width: 100%;
}


#color-1.stick {
position: fixed;
top: 0;
z-index: 10000;
border-radius: 0 0 0.5em 0.5em;
}

</style>
<script type="text/javascript">
function sticky_relocate() {
var window_top = $(window).scrollTop();
var div_top = $('#anchor').offset().top;
if (window_top > div_top) {
    $('#color-1').addClass('stick');
} else {
    $('#color-1').removeClass('stick');
}
}

$(function () {
$(window).scroll(sticky_relocate);
sticky_relocate();
});

</script>
</head>
<body>
<div id="container">


<div id="anchor"></div>
<div id="color-1">
<div id="nav-1">
  <a href="#">Link</a>
  <a href="#">Link</a>
  <a href="#">Link</a>
  <a href="#">Link</a>
  <a href="#">Link</a>
</div>
 </div>
  text

</div>
</body>
</html>

标题
#容器{
位置:固定;
溢出:滚动;
溢出x:隐藏;
左边距:375px;
边缘顶端:88px;
身高:475px;
宽度:500px;
背景色:#ddd;
}
*,
*:之后,
*::之前{
-webkit框大小:边框框;
-moz框大小:边框框;
框大小:边框框;
}
身体{
保证金:0;
字体系列:“开放式Sans”、“Helvetica Neue”、Arial、Tahoma、Sans serif;
}
#颜色-1{
保证金:0自动;
填料:1米1米;
边缘:1米;
文本对齐:居中;
}
#颜色-1{
背景:#bed0ff;
}
#导航-1A{
位置:相对位置;
显示:内联块;
保证金:5px 5px;
大纲:无;
颜色:#fff;
文字装饰:无;
文本转换:大写;
字母间距:1px;
字体大小:400;
文本阴影:0 0 1px rgba(255255,0.3);
字号:1em;
}
#nav-1A:悬停,
#nav-1A:聚焦{
大纲:无;
}
#nav-1A::之后{
显示:块;
}
#nav-1A::之后{
边缘顶部:5px;
宽度:0;
高度:2倍;
背景色:#fff;
内容:'';
不透明度:0;
-webkit过渡:宽度0.3s,不透明度0.6s;
-moz过渡:宽度0.3s,不透明度0.6s;
过渡:宽度0.3s,不透明度0.6s;
}
#nav-1A:悬停::之后,
#nav-1A:焦点::后{
不透明度:1;
宽度:100%;
}
#色标{
位置:固定;
排名:0;
z指数:10000;
边界半径:0.5em 0.5em;
}
函数重新定位(){
var window_top=$(window.scrollTop();
var div_top=$('#anchor').offset().top;
如果(窗口顶部>分区顶部){
$('#color-1').addClass('stick');
}否则{
$('#color-1')。removeClass('stick');
}
}
$(函数(){
$(窗口)。滚动(粘性重新定位);
粘性_重新定位();
});
文本
我一直在努力使菜单栏保持在顶部,因为你滚动

如果您只是想让元素在滚动时保持在顶部,您可以使用直接css来实现这一点

.sticky-element {
    position: fixed;
    top: 0;
    left: 0;
}

粘性元素
css添加到
您希望在屏幕顶部有一个固定位置;也许测试页面上没有jQuery,但我假设您的站点上有jQuery,但如果没有,那么这就是脚本无法工作的原因。我不太确定你在做什么。但是我创建了您的测试页面并添加了jQuery,您的代码确实做了一些事情。。。如果您需要添加jQuery,我建议使用GoogleCDN

我建议将来打开dev面板f12或ctrl-shift-I,查看控制台中的脚本错误。希望这有点帮助