如何拥有多个 link 悬停颜色,每次悬停时都不同?
How to have multiple link hover colors, different each rollover?
我想知道使 link 的悬停状态成为 5 种不同的预选颜色之一的最佳和最简单的方法,并且每次您滚动然后再打开时,它都会改变。
即有一个黑色的 link 到 "contact",如果您将光标悬停在它上面,它就会变成蓝色。移除光标然后 return 它在 link 上,现在它是红色的,等等
我假设 js 是最好的方法,但我还不是很熟练。
如果是类似的概念,我也想知道如何使用 div 执行上述操作(因为我可能想对图像或类似的东西执行此操作)。
感谢您的帮助!
这在 JavaScript 中是可行的,请参见下面的示例。无论元素类型如何,相同的概念都适用。
const colors = ['blue', 'black', 'orange', 'green', 'purple', 'teal', 'pink'];
document.querySelectorAll('div')
.forEach(div =>
{
div.addEventListener('mouseover', () => {
div._originalColor = div.style.backgroundColor;
div.style.backgroundColor = colors[Math.floor(Math.random()*colors.length)]
}, true);
div.addEventListener('mouseout', () => {
div.style.backgroundColor = div._originalColor;
}, true);
});
<div style="width: 300px; height: 200px; background-color: red; margin: 5px; display: inline-block;"></div>
<div style="width: 300px; height: 200px; background-color: red; margin: 5px; display: inline-block;"></div>
我想知道使 link 的悬停状态成为 5 种不同的预选颜色之一的最佳和最简单的方法,并且每次您滚动然后再打开时,它都会改变。
即有一个黑色的 link 到 "contact",如果您将光标悬停在它上面,它就会变成蓝色。移除光标然后 return 它在 link 上,现在它是红色的,等等
我假设 js 是最好的方法,但我还不是很熟练。
如果是类似的概念,我也想知道如何使用 div 执行上述操作(因为我可能想对图像或类似的东西执行此操作)。
感谢您的帮助!
这在 JavaScript 中是可行的,请参见下面的示例。无论元素类型如何,相同的概念都适用。
const colors = ['blue', 'black', 'orange', 'green', 'purple', 'teal', 'pink'];
document.querySelectorAll('div')
.forEach(div =>
{
div.addEventListener('mouseover', () => {
div._originalColor = div.style.backgroundColor;
div.style.backgroundColor = colors[Math.floor(Math.random()*colors.length)]
}, true);
div.addEventListener('mouseout', () => {
div.style.backgroundColor = div._originalColor;
}, true);
});
<div style="width: 300px; height: 200px; background-color: red; margin: 5px; display: inline-block;"></div>
<div style="width: 300px; height: 200px; background-color: red; margin: 5px; display: inline-block;"></div>