我正在研究某种老虎机,我已设法在一组特定的数字上设置结果。当我第二次单击旋转机器时,我希望使用不同的endnumbers集来实现相同的功能,但我不太了解Jquery语法以实现这一点。
这是一个Jfiddle:http://jsfiddle.net/d3fZV/(注意:代码属于Matthew Lein)
现在问题就出现了,下面这段代码完美无缺(在我的HTML文件中):
<script type="text/javascript" charset="utf-8">
$('.slot').jSlots({
spinner: '#playBtn',
winnerNumber: 7,
endNumbers: [1, 2, 3]
});
</script>
我想我可以使用这个问题的答案:Jquery, adding new function to the second click给我留下这段代码:
$('.slot').click(function(){
if( $(this).hasClass("clicked"))
{
$('.slot').jSlots({
spinner: '#playBtn',
winnerNumber: 7,
endNumbers: [3, 2, 1]; // non-first click effect
}
else
{
$(this).addClass("clicked");
$('.slot').jSlots({
spinner: '#playBtn',
winnerNumber: 7,
endNumbers: [1, 2, 3]; //first click effect
}
});
这当然会使我的整个函数无法使用,而且我很确定我只是弄乱了这里的语法。请帮帮我。谢谢。我特别感到困惑的是在某些行的末尾使用了逗号和分号。
编辑:错字
答案 0 :(得分:2)
我更新了你的小提琴并稍微修改了jQuery代码,因此它支持更改现有jsSlot的选项。
该按钮现在计算变量clickCount
中的点击次数。此外,$('.someSelector').jSlots()
现在将jsSlots对象作为数组返回
因此,您可以通过以下代码随时更改这些对象的选项:
var jsSlot = $('.slot').jSlots({
spinner: '#playBtn',
winnerNumber: 7,
endNumbers: [1, 4, 3]
})[0];
jsSlots.options.endNumbers = [5 , 2, 2];
您可以在此处找到更新的小提琴: http://jsfiddle.net/d3fZV/435/
我还将第二次点击的结束号码更改为小提琴中的[1, 4, 6]
以进行演示
答案 1 :(得分:0)
$('.slot').jSlots({
spinner: '#playBtn',
winnerNumber: 7,
endNumbers: [1, 2, 3];
应该是
$('.slot').jSlots({
spinner: '#playBtn',
winnerNumber: 7,
endNumbers: [1, 2, 3] });
参数应为object
类型,并且您希望传递object literal。
此外,您的代码将在每次点击时触发else
子句,但第一次点击,因为您在第二次点击时添加了该类,然后在每次点击时查找它。
要计算每次点击,您可以执行以下操作:
$(document).click(function(){
var prev = $(this).data('c');
$(this).data({ c: !prev ? 1 : ++prev });
var count = $(this).data('c');
console.log(count);
});