Javascript 如何获得eventListener“;按键;触发我的不同页面的链接(学生项目)?
我正在做一个学校的项目,所以我有一些限制(规则)。 我只能使用基本的html css和javascript。 没有图书馆 我设置了5个页面(包括索引),我想在键盘事件上创建一些函数,这样用户可以使用键盘1到5个键在5个页面之间导航 这是我到目前为止的html和js代码,我很确定窗口位置href是这里的问题。它可以工作,但在使用3或4次后失败Javascript 如何获得eventListener“;按键;触发我的不同页面的链接(学生项目)?,javascript,Javascript,我正在做一个学校的项目,所以我有一些限制(规则)。 我只能使用基本的html css和javascript。 没有图书馆 我设置了5个页面(包括索引),我想在键盘事件上创建一些函数,这样用户可以使用键盘1到5个键在5个页面之间导航 这是我到目前为止的html和js代码,我很确定窗口位置href是这里的问题。它可以工作,但在使用3或4次后失败 函数touche1(){ 控制台日志(“触摸1水龙头”); window.location.href=“../index.html”; } 函数touch
函数touche1(){
控制台日志(“触摸1水龙头”);
window.location.href=“../index.html”;
}
函数touche2(){
console.log(“touche 2 tapeée”);
window.location.href=“./pages/projets.html”;
}
函数touche3(){
console.log(“touche 3 tapeée”);
window.location.href=“./pages/presentation.html”;
}
函数touche4(){
console.log(“touche 4 tapeée”);
window.location.href=“./pages/medias.html”;
}
函数touche5(){
console.log(“touche 5 tapeée”);
window.location.href=“./pages/contact.html”;
}
文件.添加的文本列表器(“按键”,功能(e){
var touche=String.fromCharCode(e.charCode)
开关(触摸){
案例“1”:
触摸1()
打破
案例“2”:
touche2()
打破
案例“3”:
touche3()
打破
案例“4”:
触摸4()
打破
案例“5”:
触摸5()
打破
}})
试试(打开chrome控制台,运行代码段并按1-5键)
document.body.onkeypress=e=>{
让链接=[
“index.html”,
“pages/projets.html”,
“pages/presentation.html”,
“pages/medias.html”,
“pages/contact.html”,
]
位置=链接[e.key-1]| |链接[0];
}
谢谢大家!我终于明白了。
我的问题是我的索引与其他页面不在同一文件夹中。
我只是复制了我的索引作为我的主页,并把它放在同一个文件夹中,并将我的索引作为一个输入页面。它工作正常
感谢所有的快速回答:)您很可能不得不改变使用/
地址,或者完全限定您的地址,或者将它们改为使用/
,这样它们从域根开始,并从那一点限定它们。一旦您进入/page/contact.html
并尝试转到/page/otherplace
,由于/
的相对性质,url将尝试转到/page/page/otherplace
或类似的位置