我使用 window.location.replace 对吗? (我也在写命令吗?)

Am I using window.location.replace right? (also am I writing commands right?)

我的所有编码信息都是从互联网上获取的,而不是从 class 获取的,有些答案我不太理解,所以希望我能对一个可能很愚蠢的问题得到一个简单的答案。

在我网站的一部分中,我有一个按钮,它会弹出一个 window.prompt,它会询问查看者是否想转到一个页面(我将其称为时间轴,因为它是我的艺术作品集的时间表)或另一个。提示工作得很好,我试图对其进行编码,例如,如果用户输入 "Timeline",网页会自动将他们重定向到时间轴页面(目前对我来说是空的),反之亦然如果他们输入 "Term 1"(另一页的名称),则相反。我发现了 window.location.replace,并假设如果我试图让它重定向用户,它会起作用,但是当我 运行 我的网页在我输入提示 window 后没有任何反应。我检查了 Chrome 上的开发人员工具,它没有报告任何错误,所以只是我输入了一些错误的东西吗?

   function promptFunction() {
    var choice = window.prompt ("Would you like to go to the Timeline or to Term 1?")

    if (choice === "Timeline")
        function redirTime() {
        window.location.replace() ("Timeline.html");
        }

    else if (choice ==="timeline") 
        function redirTime() {
        window.location.replace() ("Timeline.html");
        }

    else if (choice ==="Term 1") 
        function redirFirstTerm() {
        window.location.replace() ("Term 1.html")
        }

    else if (choice ==="term 1") 
        function redirFirstTerm() {
        window.location.replace() ("Term 1.html")
        }   

    };

这可能又是我在眼皮子底下寻找答案,所以如果答案显而易见,抱歉 ^^'

编辑: 我现在有答案了;非常感谢! (我确实认为这与我输入的方式有关,抱歉)

您发布的代码基于 choice 函数创建,但该函数从未执行过(或者您省略了此代码)。

此外 window.location.replace()("...") 部分是错误的。它在 window.location 上调用 replace 函数而不带参数,并再次使用此函数调用的结果作为函数传递,例如"Timeline.html" 作为参数。

如果您只想设置位置,请直接分配,例如window.location = "https://whosebug.com" 或您的情况 window.location.href = "Timeline.html"(参见 https://developer.mozilla.org/en-US/docs/Web/API/Window/location)。