Javascript 随机悬停效应
如何随机化悬停效果 例如:Javascript 随机悬停效应,javascript,jquery,html,css,Javascript,Jquery,Html,Css,如何随机化悬停效果 例如: <p>test</p> p:hover { background: yellow; } p:hover: background: red; } 测试 p:悬停{ 背景:黄色; } p:悬停: 背景:红色; } 请注意,以上仅为示例。问题是,你怎么能随机化悬停效果,所以它显示背景:黄色和背景:红色一次 不应该有任何顺序,例如:在第一次悬停时,添加一个类,在第二次悬停时,添加另一个类。它应该是完全随机的您应该使用javascript设置不同
<p>test</p>
p:hover {
background: yellow;
}
p:hover:
background: red;
}
测试
p:悬停{
背景:黄色;
}
p:悬停:
背景:红色;
}
请注意,以上仅为示例。问题是,你怎么能随机化悬停效果,所以它显示背景:黄色代码>和背景:红色在onmouseover
上以随机顺序编码>一次
不应该有任何顺序,例如:在第一次悬停时,添加一个类,在第二次悬停时,添加另一个类。它应该是完全随机的您应该使用javascript设置不同的类
例如,类似这样的内容(jquery):
我测试了它,它工作了。。。在这里,你有一个简单的方法。您可能需要addClass和removeClass。这取决于你的紫色
.p1:hover {
background: yellow;
}
.p2:hover{
background: red;
}
.p3:hover{
background: blue;
}
// And so on...
setRandomHover(function() {
var number = 1 + Math.floor(Math.random() * 6);
if (number == 1)
{
$('#your_div').attr('class','p1');
} else if (number == 2)
{
$('#your_div').attr('class','p2');
}
// And so on...
};
您可以在悬停时向元素添加一个随机类,并在悬停事件完成时将其删除
如果您有以下CSS:
.yellow {
background: yellow;
}
.red {
background: red;
}
您可以使用以下jQuery代码示例:
// Declare all classes that can be used in the random selection
var classes = ['yellow', 'red'];
$("p").hover(
function() {
// Select a random class
var randomClass = classes[Math.floor(Math.random() * classes.length)];
$(this).addClass(randomClass);
}, function() {
$(this).removeClass();
}
);
您可以在上查看一个示例
使用Math.random()
函数对类
数组进行随机选择。使用以下函数获取随机颜色,并使用mouseover事件更改背景颜色
function getRandomColor () {
var letters = '0123456789ABCDEF'.split('');
var color = '#';
for (var i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)];
}
return color;
}
})
$( "p" ).mouseover(function() {
$(this).css("background",getRandomColor());
});
函数getRandomColor(){
变量字母='0123456789ABCDEF'。拆分('');
var color='#';
对于(变量i=0;i<6;i++){
颜色+=字母[Math.floor(Math.random()*16)];
}
返回颜色;
}
})
$(“p”).mouseover(函数(){
$(this.css(“background”,getRandomColor());
});
请检查这个
$(文档).ready(函数(){
$(“p[数据随机]”).mouseover(函数(){
最大_值=5;
随机值=数学地板((数学随机()*最大值)+1);
$(this).attr(“数据随机”,随机值);
});
})
p[数据随机]{
填充:10px;
边框:1px纯黑;
}
p[数据随机]:悬停{
光标:指针
}
p[data random=“1”]:悬停{
背景:黄色;
}
p[data random=“2”]:悬停{
背景:红色;
}
p[data random=“3”]:悬停{
背景:黑色;
}
p[data random=“4”]:悬停{
背景:白色;
}
p[data random=“5”]:悬停{
背景:蓝色;
}
您好
创建不同的类并在它们之间进行更改…如何以随机顺序切换特定类?请添加一个工作示例。谢谢。不使用类,但是你可以在鼠标上使用JQ CSS分配一个随机颜色-所以Math.random应该这样做…?你只是在两个状态之间切换,更新为随机版本也许这段代码的演示会改进这个答案?为什么我投了反对票?有人能给我解释一下吗?只是为了知道。。。我想知道我做错了什么…:)周一。。。我忘了一点。。。我编辑了!!我想人们知道调用类或id的不同之处。如果你看到我的Jquery,你就会知道我一直在谈论类。。。无论如何,谢谢@Paulie_D让我知道…:)也许是这项工作的演示?我不相信这是随机的,它似乎依赖于大量的类/ID…当然这可能更有效?好的。。。也许这不是完美的答案。即使是想要的。但这就足够给我负面评价了吗?演示有效吗?我很肯定这个问题已经足够了。不是吗?这是一种生成颜色的有趣方法。@Aneesh,这是一种生成随机颜色的非常有趣的方法,但我认为这不是生成颜色的好方法。它可能与文本或前颜色匹配,我认为预定义的颜色应该是CSS或JS中最好的颜色
function getRandomColor () {
var letters = '0123456789ABCDEF'.split('');
var color = '#';
for (var i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)];
}
return color;
}
})
$( "p" ).mouseover(function() {
$(this).css("background",getRandomColor());
});