哎呀,小提琴现在更新正确
在这个小提琴中,http://jsfiddle.net/SySRb/118/一旦你点击.start
一个数组中的元素被随机选择并分配给变量ran
这个随机选择jquery已被检查http://jsfiddle.net/urfXq/96/并正在工作我不认为这是问题所在,尽管人们已经提出了使其更优雅的方法。
继续......
将数组中的元素分配给ran
后,将开始if- then结构。 if
在这个小提琴中肯定是假的,所以else
代码应该运行。我对else代码的意图是添加div哈希标记,然后执行ran.show,以便页面上的两个div(用css隐藏)中的一个变得可见。
其他人没有用。如果if语句为真,我认为它也不起作用......
else {
ran = ('# + ran');
$('ran').show(); //one of the two divs should show but they don't
}
});
注意,因为这只是一段较大的代码,如果你完全重构一切,我可能无法使用它......
答案 0 :(得分:1)
你正在进行字符串连接错误..
使用
ran = '#' + ran;
$(ran).show();
您需要在test
上调用document.ready
方法,因此请使用
$(test);
演示
答案 1 :(得分:0)
一些事情:
您忘记使用$
使用jQuery查询DOM。你应该替换:
ran = ('# + ran');
与
ran = $("#" + ran");
即,通过将#
附加到ran
来构建jQuery选择器,然后使用该选择器调用jQuery。
由于您保存jQuery调用结果的变量名为ran
,因此您应该替换
$('ran').show();
与
ran.show();
是否会调用函数test()
?您的代码无法正常工作的部分原因是因为该函数未被调用,因此click事件永远不会被绑定。将所有内容包裹在$(document).ready(function () { ... })
中并致电test()
。
请务必将var
与变量声明一起使用。否则,您正在创建一个全局变量。