我正在尝试添加鼠标控件以导航到我的游戏。我在屏幕上创建了一些按钮,如下所示:
<input type="image" id= "buttonUp" src="UpButton.jpg" alt="Up" style="position:absolute; left: 200px; top: 550px;">
<input type="image" id= "buttonDown" src="DownButton.jpg" alt="Down" style="position:absolute; left: 200px; top: 650px;">
<input type="image" id= "buttonLeft" src="LeftButton.jpg" alt="Left" style="position:absolute; left: 100px; top: 650px;">
<input type="image" id= "buttonRight" src="RightButton.jpg" alt="Right" style="position:absolute; left: 300px; top: 650px;">
每个人显然对应于每个运动方向。然后从那里我试图让它们在点击时触发:
$('.buttonUp').on('click', function () {
direction == "up";
});
$('.buttonDown').on('click', function () {
direction == "down";
});
$('.buttonLeft').on('click', function () {
direction == "left";
});
$('.buttonRight').on('click', function () {
direction == "right";
});
但点击时它没有做任何事情。我该如何解决这个问题?
答案 0 :(得分:1)
为了给变量赋值,你必须使用一个equals
符号,而不是像你在代码中那样用来比较值。将您的所有==
更改为=
。
此外,您使用的是类选择器.
,但您应该使用ID选择器#
答案 1 :(得分:1)
现在,您正在以各种方式复制代码。您正在使用类选择器来按ID获取元素。并且您正在使用相等比较来尝试设置值。相反,我有一个连接到所有控件的功能,并使用控件的alt值来设置方向。见下文。
var direction;
$('.control-btn').on('click', function ()
{
direction = $(this).attr("alt").toLowerCase();
console.log(direction);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="image" id= "buttonUp" class="control-btn" src="UpButton.jpg" alt="Up" style="position:absolute; left: 200px; top: 50px;">
<input type="image" id= "buttonDown" class="control-btn" src="DownButton.jpg" alt="Down" style="position:absolute; left: 200px; top: 150px;">
<input type="image" id= "buttonLeft" class="control-btn" src="LeftButton.jpg" alt="Left" style="position:absolute; left: 100px; top: 150px;">
<input type="image" id= "buttonRight" class="control-btn" src="RightButton.jpg" alt="Right" style="position:absolute; left: 300px; top: 150px;">
&#13;
答案 2 :(得分:0)
假设您的方向逻辑已经编码,您必须将Allow
更改为==
。 =
用于比较。使用==
将值等同于=
。
此外,您在HTML代码中使用ID,但在脚本中使用类选择器。