JavaScript 在本地主机中工作,但在托管时不能

javascript working in localhost but not when hosted?

本文关键字:不能 工作 主机 JavaScript      更新时间:2023-09-26

我正在尝试在我的网站上实现一个简单的图像滑块,但它似乎不想工作。什么也没发生。到目前为止,我能想到的一切都不起作用,所以我想我会在这里问。这是我的代码。

window.onload = function(){
   image = document.getElementById("slideShow");
   index = 0;
   setInterval(slide, 3000);
};
function slide(){
    index++;
    if(index >= 6) {index = 0;}
    path = "images/Slideshow/image"+index+".jpeg";
    image.setAttribute("src",path);
}

window.onload非常俗气,因为似乎没有人同意onload的实际含义。

我建议你使用

document.addEventListener("DOMContentLoaded", function(){
    // code
});

您应该注意的另一件事是加载缓慢。如果在触发 ready 事件后加载脚本,则代码将永远不会触发。

包装就绪函数的解决方案是一个单独的模块。

var eventReady;
(function(){
    var funcArr = [];
    eventReady = function(func){
        funcArr.push(func);
    }
    document.addEventListener("DOMContentLoaded", function(){
        for(var i=0;i<funcArr.length;i++){
            try{
                funcArr[i]();
            }
            catch(e){
                throw(e);
            }
            finally{
                continue;
            }
        };
        eventReady = function(func){
            func();
        }
    });
})();

然后使用模块,如下所示:

eventReady(function(){
    // code
})