添加JS时Tumblr的奇怪行为
Strange behavior of Tumblr when adding JS
首先,我对JavaScript有点陌生。但是,我写了一个小脚本来检查 DOM 是否已准备就绪,然后在页面滚动时修复我的 tumblr 博客的标题。
我的代码如下所示:
document.addEventListener("DOMContentLoaded", function() {
console.log("DOM ready!");
function fixHeader() {
var header = document.querySelector("#js--site-header");
var offset = 100;
// only used to see the current offset when debugging
console.log(window.scrollY);
window.scrollY >= offset
? header.classList.add("js--header-fixed")
: header.classList.remove("js--header-fixed");
};
document.addEventListener("scroll", fixHeader);
});
我在CodePen上模拟了完全相同的代码,以测试它是我的代码中的错误还是Tumblr的问题。到目前为止,Tumblr似乎是问题所在。每当我将页面滚动到 100px 以上时,它都会重新加载而不是将标题固定在顶部。在CodePen上,一切都按预期工作,并且标题已修复。
你可以在这里看到我的博客,上面有不起作用的代码(NSFW)
每一个帮助或提示将不胜感激,我不知道我做错了什么。
您遇到的不是重新加载(您可以使用Firebug等工具来查看浏览器是否创建了任何HTTP请求)。你的tumblr博客的问题在于你试图修复的"标题"也包含整个内容。因此,一旦达到 100px 偏移量,整个内容就会固定下来,不会留下可滚动的内容。滚动偏移量回退到 0,事件处理程序第二次触发,事件处理程序再次取消修复"标头"。
将</header>
移到<main class="content">
前面。
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 强制模板刷新ember.js
- 如何编写HTML输入的JS内联
- Angular JS IE9 Hashbang url rewriting
- 使用JS将数组转换为json对象
- Node.js v6.2.0类扩展不是函数错误
- 当js函数's已执行
- 要求未定义JS回调参数
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 添加JS时Tumblr的奇怪行为
- Tumblr JS嵌入CSS/HTML标签进行样式设置
- Tumblr.js API -- require() fails
- 使用Tumblr API时如何在QML中导入JS文件
- 如何在tumblr子页面上运行JS小部件
- 如何使用"tumblr.js"上传照片博客到tumblrNodeJS模块
- 从tumblr.com/js更改帖子数
- Tumblr 上的 JS:“跨域资源共享策略”错误