重定向到另一个页面,并在Javascript中继续游戏

重定向到另一个页面,并在Javascript中继续游戏,javascript,html,redirect,button,Javascript,Html,Redirect,Button,我制作了一个基于浏览器的故事RPG游戏,如果用户点击按钮,我想重定向用户 以下是未编辑页面的HTML: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-C

我制作了一个基于浏览器的故事RPG游戏,如果用户点击按钮,我想重定向用户

以下是未编辑页面的HTML:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <link href="css/styles.css" rel="stylesheet">
  <script defer src="js/game.js"></script>
  <title>Home</title>
</head>

<body>
  <div class="topnav">
    <a class="active" href="index.html">Home</a>
    <a href="about.html">About</a>
  </div>

  <div class="container">
    <div id="text">Text</div>
    <div id="option-buttons" class="btn-grid">
      <button class="btn"></button>
      <button class="btn"></button>
      <button class="btn"></button>
      <button class="btn"></button>
    </div>
    <div class="warning">
      <p>CLICKING NAVIGATION LINKS AT TOP OF PAGE WILL RESET YOUR PROGRESS!</p>
    </div>
  </div>
</body>

</html>


下面是游戏的一个片段:

{
    id: 2,
    text: 'story',
    options: [{
        text: 'text',
        requiredState: (currentState) => currentState.item,
        setState: {
          item1: false,
          item 2: true
        },
        nextText: 3
      },
      {
        text: 'text',
        requiredState: (currentState) => currentState.item,
        setState: {
          item1: false,
          item2: true
        },
        nextText: 4
      },
      {
        text: 'Attack the enemy!',
        redirect()
      },

请注意redirect()的位置,此时它会将玩家重定向到站点的另一部分,并继续播放,否则将被杀死

当我将redirect()放在div容器中时,整个div容器会中断,并且不会显示任何内容


如何将用户重定向到另一个html页面?

您可以使用发送来打开另一个网页,也可以让它自己打开,这样它就可以在不打开新选项卡的情况下打开。

您可以使用
iframe
来完成此工作

在当前页面中打开

function redirect() {
   window.open("bar.html", "_self");
}
和你的一样:

function redirect() {
  window.location.href = "/foo/bar.html";
}
在不同选项卡或您所称的(站点的另一部分)中打开


这是一个游戏片段,看起来像是一个对象定义。。。您的控制台可能有错误吗?您可能需要查看的是事件侦听器附加到按钮的文档,以便它们实际执行某些操作您不能将
redirect()
放在其中;这是一个语法错误。你需要一个键,你需要引用它,而不是调用它:
action:redirect
如果这样做,你可以执行
gameData[123]。选项[2]。action()
来实际调用函数。还有,这些答案到底是怎么回事。。。?还有:也许可以调查一下。
function redirect() {
  window.location.href = "/foo/bar.html";
}
function redirect() {
   window.open("bar.html", "_blank");
}