Javascript 使JS类型成为可点击的链接

Javascript 使JS类型成为可点击的链接,javascript,hyperlink,clickable,Javascript,Hyperlink,Clickable,我想为我哥哥的生日制作一个简单的浏览器游戏,我被卡住了。这是我在[]找到的一段代码。在输入正确后,我希望JS为下一个级别键入一个可单击的链接。我该怎么做?另一种可能是,如果写下正确的输入,则让JS重定向到新页面,但对我来说,这似乎更复杂。 请确切地告诉我在哪里插入缺少的行,否则我将不知道如何实现它。TIA var area = document.querySelector('.box-text'); var input = document.querySelector('.cmd-text');

我想为我哥哥的生日制作一个简单的浏览器游戏,我被卡住了。这是我在[]找到的一段代码。在输入正确后,我希望JS为下一个级别键入一个可单击的链接。我该怎么做?另一种可能是,如果写下正确的输入,则让JS重定向到新页面,但对我来说,这似乎更复杂。 请确切地告诉我在哪里插入缺少的行,否则我将不知道如何实现它。TIA

var area = document.querySelector('.box-text');
var input = document.querySelector('.cmd-text');
var box = document.querySelector('.box');
var title = `Welcome, to Shady Brook Hills`
var start = `

placeholder`;

var help = `
the commands are:
help: the current command.
stand up: stand up from the current position`

var credits = `
story writer: TehMerow;
coding: TehMerow;
`
function typeWrite(text, n, delay, area){
    if(n < (text.length)){
      area.innerText += text[n];
      n++
    }
    setTimeout(function(){
      typeWrite(text, n, delay, area);
    }, delay)
}
typeWrite(title, 0, 0, area);
setTimeout(function(){
  typeWrite(start, 0, 0, area);
}, 3000)

document.addEventListener('keydown', function(e){
  e.preventDefault;

  if(e.which === 13 ){

    switch(input.value){
      case 'help':
        typeWrite('\n' + input.value + help, 0, 50, area);
        break;
      case '':
        input.value = '';
        break;
      case 'credits':
        typeWrite(credits, 0, 25, area);
        break;
      default:
        typeWrite('\n' + "I don't know how to " + input.value, 0, 50, area);
        break;
    }

    //ensure that bottom line is 
    //alays in view
    box.scrollTop += 100;
    //empty input
    input.value = ''
  }

}, false)

var area=document.querySelector('.box text');
var input=document.querySelector('.cmd text');
var-box=document.querySelector('.box');
var title=`欢迎来到Shady Brook Hills`
变量开始=`
占位符`;
变量帮助=`
这些命令是:
帮助:当前命令。
站立:从当前位置站立`
风险值信用=`
故事作者:特赫梅罗;
编码:TehMerow;
`
功能打字(文本、n、延迟、区域){
如果(n<(文本长度)){
area.innerText+=文本[n];
n++
}
setTimeout(函数(){
打字(文本、n、延迟、区域);
},延误)
}
打字(标题,0,0,区域);
setTimeout(函数(){
打字(开始,0,0,区域);
}, 3000)
文档.添加的事件列表器('keydown',函数(e){
e、 防止违约;
如果(e.which==13){
开关(输入值){
案例“帮助”:
打字('\n'+input.value+help,0,50,区域);
打破
案例“”:
input.value='';
打破
案例“信用证”:
打字(学分,0,25,面积);
打破
违约:
打字('\n'+“我不知道如何”+input.value,0,50,area);
打破
}
//确保底线是正确的
//阿拉斯在望
box.scrollTop+=100;
//空输入
input.value=“”
}
},错)

更新:我已经设法把一些东西放在一起,可以像文本冒险或简单的QA游戏一样工作,但仍然没有可点击的链接选项

function myFunction() {
  var text;
  var answers = document.getElementById("myInput").value;
  switch(answers) {
    case "answer1":
    text = "THAT IS THE CORRECT ANSWER. HERE IS YOUR LINK: https://www.link-which-should-be-clickable.com";
    break;

    case "answer2":
    location="https://www.link-which-should-be-clickable.com";
    break;

    case "answer3":    
    txt.link("https://www.link-which-should-be-clickable.com")
    break;

    default:
    text = "THAT IS NOT THE CORRECT ANSWER";
  }
  document.getElementById("demo").innerHTML = text;
}

“answer1”只写文本,“answer2”重定向到该页面,“answer3”什么都不做。真的没有办法让链接在这个表单中可点击吗?

看起来很像。你可能想检查一下,相关的编辑器也出来了。除此之外,你可以将级别号作为数据添加到链接中。像三级感谢,@TimB,questjs对我来说似乎很复杂,因为正如我所说的,我几乎知道关于JS没有什么。除此之外,我会在谷歌网站上创建这个,所以我需要能够插入整个页面作为一个带有“嵌入”选项的iframe。你会如何进入第三级?我不知道在哪里插入它才能正常工作。正如我所说,QuestJS还有一个编辑器(在另一个链接存储库中)可用。或者你可以试试textadventures.co.uk-在那里你甚至可以上传你的游戏。我建议你首先学习JavaScript,也许还有jQuery,如何工作,因为我不知道你的游戏应该如何工作,所以我不能告诉你具体怎么做。再次感谢@TimB,我已经设法做了一些可以工作的事情,但是其他的对于可单击的链接,e仍然没有选项。请查看JavaScript querySelector和addEventListener。为该链接提供一个id或类。为该类或id创建一个querySelector。然后为单击添加事件侦听器,选择要移动到哪个级别的数据和tada。不过,您需要删除该级别链接或在之后禁用它。