0

我在一次采访中做了一个小测试,使用 HTML5 DOM 创建了一个石头剪刀布游戏。包含 3 张图像的图像选项下方是占位符,用于显示我(用户)和计算机随机选择的内容。

我对此有很多疑问:首先可以用 jQuery 编写逻辑吗?事件处理程序只能做这么多。我之前在 JavaScript 中制作了一个随机 # 生成器,所以我猜想使用 jQuery 和 JS 的混合...

这是我所拥有的示例-> http://jsfiddle.net/Tryah85/JxKjk/。我在 jQuery 选择器中指定类和 id 时遇到问题,$("#scissors.pick");这可行吗?

首先,没有一个 jQuery 工作......这是一个片段......我知道代码是这样开始的:

$(document).ready( function() {
    $("id-or-class-oreven-html-selector").click( function() {
    });
});

我需要更多基本 jQuery 事件处理程序的方向。

而不是图像,我让这个小提琴更简单。基本上我希望客户端的结果显示,同时也让浏览器随机选择:因此也打印计算机结果。然后最后会显示谁赢得了回合的结果。

这个练习让我思考了我对 jquery 的了解。我以为我对它有一个扎实的理解,但现在我不知道如何解决这个问题,有人可以帮忙吗?

提前致谢!

4

2 回答 2

0
$("#scissors.pick"); is this doable?

不,它不可行,如果你有一个唯一的 id,只需使用,

$("#scissors")

正如 Evan Trimboli 在评论中建议的那样,

您正在收听带有 className 手势的元素以提供单击事件,但您的 html 中没有它。此外,使用 id.className 类型的选择器是多余的。id 必须是唯一的,所以只需使用#id。

这是一个演示,它显示了您如何确定玩家的动作,同样您可以随机选择电脑的​​动作,然后决定谁赢了。

单击任何 id 应用作,

$("#rock").click(function(){
    $("#yourMove").text("Your Move: Rock");
});

寻找更短的代码?在一行中完成。

演示

  $("#rock, #paper, #scissors").click(function(){
        $("#yourMove").text("Your Move: " + $(this).attr('id'));
    });
于 2013-08-03T07:28:59.060 回答
0

我改变了很多,也许这有帮助

您所有的 if 语句可能会大大减少,尽管仍然不是很好

$("#yourMove .move").html($("h2", $(this).clone()))
                    .addClass($(this).attr('data-pick'));

更新的小提琴

于 2013-08-03T07:31:39.820 回答