html
<div id="js-container"></div>
js
var jsContainer = document.getElementById("js-container");
var windowHeight = window.innerHeight;
window.addEventListener("scroll", function() {
var scrollPosition = window.scrollY + windowHeight;
var jsPosition = jsContainer.offsetTop;
if (scrollPosition >= jsPosition) {
var newScript = document.createElement("script");
newScript.src = "path/to/js/file.js";
jsContainer.appendChild(newScript);
}
});
注释
首先获取了空的div元素和窗口高度,然后为窗口绑定了scroll事件。在scroll事件的回调函数中,获取了当前滚动条的位置和需要加载js文件的位置,如果当前滚动条的位置大于等于需要加载js文件的位置,就动态创建一个script标签,并将需要加载的js文件路径设置为其src属性,最后将script标签插入到空的div中。这样就可以实现滑动加载js文件的效果。