Html 单击链接时更改颜色的问题

Html 单击链接时更改颜色的问题,html,Html,我是个新手。 我正在尝试创建一个包含一系列链接的HTML页面。我必须以非顺序的方式访问这些链接,所以我必须记住哪些链接已经被访问,哪些没有被访问。 我考虑过不时更改所访问链接的颜色,我希望在浏览器关闭之前保持这种颜色。重新打开浏览器时,所有链接都应恢复其原始颜色。 这是我使用的代码(在stackoverflow的帮助下),颜色很好用,但所有链接打开的网站总是最后一个,即我点击google.com而苹果.com打开。帮忙?多谢各位 功能openPortal(elem){ 窗口打开(“https:

我是个新手。 我正在尝试创建一个包含一系列链接的HTML页面。我必须以非顺序的方式访问这些链接,所以我必须记住哪些链接已经被访问,哪些没有被访问。 我考虑过不时更改所访问链接的颜色,我希望在浏览器关闭之前保持这种颜色。重新打开浏览器时,所有链接都应恢复其原始颜色。 这是我使用的代码(在stackoverflow的帮助下),颜色很好用,但所有链接打开的网站总是最后一个,即我点击google.com而苹果.com打开。帮忙?多谢各位

功能openPortal(elem){
窗口打开(“https://google.com");
elem.style.color=“红色”;
}
函数openPortal(elem){
窗口打开(“https://apple.com");
elem.style.color=“红色”;
}
if(window.parent&&window.parent.parent){
window.parent.parent.postMessage([“resultsFrame”{
高度:document.body.getBoundingClientRect().height,
鼻涕虫:“xqyfa64y”
}], "*")
}
window.name=“结果”
让所有行=[]
window.addEventListener(“消息”,(消息)=>{
if(message.data.console){
let insert=document.querySelector(“插入”)
allLines.push(message.data.console.payload)
insert.innerHTML=allLines.join(“;\r”)
让result=eval.call(null,message.data.console.payload)
如果(结果!==未定义){
console.log(结果)
}
}
})

谷歌

苹果


无论您单击哪个链接,它都将始终运行此功能:

function openPortal( elem ) {
    window.open("https://apple.com");
    elem.style.color="red ";
}
function openPortal( elem ) {
    window.open(elem.href);
    elem.style.color="red ";
}
正如您可能知道的那样,调用函数的
elem
(元素)实际上对将打开的页面没有任何影响,例如
窗口https://apple.com)执行

您应该添加一个
href=”https://google.com“
进入

函数openPortal(elem){ elem.style.color=“红色”; }

// if(window.parent&&window.parent.parent){ window.parent.parent.postMessage([“resultsFrame”{ 高度:document.body.getBoundingClientRect().height, 鼻涕虫:“xqyfa64y” }], "*") } window.name=“结果” 让所有行=[] window.addEventListener(“消息”,(消息)=>{ if(message.data.console){ let insert=document.querySelector(“插入”) allLines.push(message.data.console.payload) insert.innerHTML=allLines.join(“;\r”) 让result=eval.call(null,message.data.console.payload) 如果(结果!==未定义){ console.log(结果) } } })
无论您单击哪个链接,它都将始终运行此功能:

function openPortal( elem ) {
    window.open("https://apple.com");
    elem.style.color="red ";
}
function openPortal( elem ) {
    window.open(elem.href);
    elem.style.color="red ";
}
正如您可能知道的那样,调用函数的
elem
(元素)实际上对将打开的页面没有任何影响,例如
窗口https://apple.com)执行

您应该添加一个
href=”https://google.com“
进入

函数openPortal(elem){ elem.style.color=“红色”; }

// if(window.parent&&window.parent.parent){ window.parent.parent.postMessage([“resultsFrame”{ 高度:document.body.getBoundingClientRect().height, 鼻涕虫:“xqyfa64y” }], "*") } window.name=“结果” 让所有行=[] window.addEventListener(“消息”,(消息)=>{ if(message.data.console){ let insert=document.querySelector(“插入”) allLines.push(message.data.console.payload) insert.innerHTML=allLines.join(“;\r”) 让result=eval.call(null,message.data.console.payload) 如果(结果!==未定义){ console.log(结果) } } })
很好,谢谢,但谷歌和苹果都在两个新标签中打开了两次,就像我在“target=“\u blank”…哦,是的,因为链接本身现在已经有了href,你实际上不需要执行
window.open(elem.href)
不再。我想你已经知道了。如果你只想要一个标签,只使用href更简单。使用
window.open(elem.href);
只是展示如何访问传递到函数中的元素的href。当然,你是对的。现在非常好,非常感谢!它工作正常,谢谢你,但谷歌和苹果都在两个新选项卡中打开了两次,就像我在“target=“\u blank”…哦,是的,因为链接本身现在已经有了href,您实际上不需要执行
window.open(elem.href)不再。我以为你知道。如果您只需要一个选项卡,那么只使用href更简单,使用
window.open(elem.href)
只是显示如何访问传递到函数中的元素的href。当然,您是对的。现在很好,非常感谢!