我之前问过这个,但做了一个可怕的工作来描述它。我希望创建一个单击的链接,它会随机变量为true,从而启动一系列动画/事件。这可能与jQuery有关吗?谢谢你的帮助。
编辑:
描述它的最佳方式是:
var random1 === false
var random2 === false
var random3 === false
$("a#random-btn").click(function(event){
"var random1, random2, or random3" === true;
});
if (random1 === true){
$("a#1 span").stop().animate({opacity: 1,}, '100').animate({opacity: 0,}, '100')
});
if (random2 === true){
$("a#2 span").stop().animate({opacity: 1,}, '100').animate({opacity: 0,}, '100')
});
if (random3 === true){
$("a#3 span").stop().animate({opacity: 1,}, '100').animate({opacity: 0,}, '100')
});
答案 0 :(得分:1)
注意:我的回答不允许您将变量随机分配为true。我猜你试图将变量赋值为true并使用它(它们)来做其他一些事情,对吧?为什么不使用int,更改它并使用switch语句作为逻辑?
var branch = -1;
$("a#random-btn").click(function(event){
branch = Math.ceil(Math.random() * 3);
switch(branch){
case 1:
$("a#1 span").stop().animate({opacity: 1,}, '100').animate({opacity: 0,}, '100')
break;
case 2:
$("a#2 span").stop().animate({opacity: 1,}, '100').animate({opacity: 0,}, '100')
break;
case 3:
$("a#3 span").stop().animate({opacity: 1,}, '100').animate({opacity: 0,}, '100')
break;
}
});
或更紧凑
var branch = -1;
$("a#random-btn").click(function(event){
branch = Math.ceil(Math.random() * 3);
$("a#" + branch + " span").stop().animate({opacity: 1,}, '100').animate({opacity: 0,}, '100')
});
答案 1 :(得分:0)
将变量随机变为真是什么意思?还有什么是启动一系列动画/事件的意思?我真的不明白这个问题。
但如果您想在点击期间进行变量修改或其他操作,请执行此操作。
jQuery('a').click(function(){
var myVariableFalse = true;
});
答案 2 :(得分:0)
这真的很笨,但这很有效。
<script>
var var1 = false;
var var2 = false;
var othervar = false;
var variables = ["var1","var2","othervar"];
</script>
<a href="Javascript:eval(variables[Math.floor(Math.random()*variables.length)] + ' = true;');">link</a>
我的建议是让你想要改变的所有变量都放在一个对象中,然后用一个字符串轻松引用。
<script>
Object.size = function(obj) {
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
var variables = {"var1":false,"var2":false,"othervar":false};
</script>
<a href="Javascript:variables[Math.floor(Math.random()*Object.size(variables))] = true;">link</a>