【发布时间】:2021-06-27 02:34:01
【问题描述】:
我有一个需要帮助的 HTML/JavaScript 页面。在浏览器中启用 JavaScript 时,它工作得很好,但是,当浏览器禁用 JavaScript 时,实际上只有第一个 div 显示。有没有办法更改 CSS/JavaScript 以便在禁用 JavaScript 时浏览器将显示所有不带动画的 div?
我想要它做什么:
启用 JavaScript 后,它会在用户滚动时显示和删除 div(这就是现在所做的)
禁用 JavaScript 后,所有 div 将仅显示在页面上,没有动画。
HTML
<div class="M1">
<h2>Text</h2>
<div class="HeaderHomeLDs">
<p>Some Text</p>
</div>
</div>
<div class="tag M2">
<h2>Text</h2>
<div class="HeaderHomeLDs">
<p>Some Text</p>
</div>
</div>
<div class="tag M3">
<h2>Text</h2>
<div class="HeaderHomeLDs">
<p>Some Text</p>
</div>
</div>
<div class="tag M4">
<h2>Text</h2>
<div class="HeaderHomeLDs">
<p>Some Text</p>
</div>
</div>
CSS
.tag {
opacity: 0;
transform: translate(0, 10vh);
transition: all 1s;
}
.tag.visible {
opacity: 1;
transform: translate(0, 0);
}
JavaScript
$(document).on("scroll", function() {
var pageTop = $(document).scrollTop();
var pageBottom = pageTop + $(window).height();
var tags = $(".tag");
for (var i = 0; i < tags.length; i++) {
var tag = tags[i];
if ($(tag).position().top < pageBottom) {
$(tag).addClass("visible");
} else {
$(tag).removeClass("visible");
}
}
});
对不起,如果这是一个简单的问题,但我对 JavaScript 比较陌生,无法让它以我想要的方式与 CSS 一起工作。
另外,我知道有一种方法可以预览代码(代码底部有“运行代码”蓝色按钮),但我找不到使用它的方法。也将不胜感激。
【问题讨论】:
标签: javascript html css animation