【发布时间】:2016-04-25 00:21:32
【问题描述】:
所以我决定学习 JS 和 jQuery 编程的最佳方式是尝试构建我喜欢的东西。所以我决定使用最少的 HTML 和主要是 JS 和 Jquery 制作自己的棋盘。
下面的代码呈现一个板并在图块的起始位置插入图像。
$(document).ready(function(){
//draw the chess board
var amount = 0;
var columnColor = "Black";
while(amount < 64){
if(amount % 9 === 0){
amount++
}
else if (amount < 18){
$(".mainWrapper").append('<div class="block'+columnColor+'"><img class="pawn" src="images/whitePawn.png" alt="White Pawn" height="42" width="42"></div>')
amount++
}
else if (amount > 45){
$(".mainWrapper").append('<div class="block'+columnColor+'"><img class="pawn" src="images/blackPawn.png" alt="White Pawn" height="42" width="42"></div>')
amount++
}
else{
$(".mainWrapper").append('<div class="block'+columnColor+'"></div>')
amount++
}
switch (columnColor){
case "White":
columnColor = "Black";
break;
case "Black":
columnColor = "White";
break;
}
};
});
console.log("I ran! :D");
我的下一步是让碎片能够移动。现在起初我想我会通过使用 jQuery 的.draggable 方法来做到这一点。哪个有效(有点)但没有做我想要的,因为它不会以干净的方式移动它们(碎片可以与正方形重叠)并且它不限制用户可以移动的正方形数量。
所以稍后快速谷歌搜索,我在 Stackoverflow 上找到了 THIS 帖子。他们在那里描述了一种使用 appendTo 将项目移动到另一个父 div 的方法。对于我的情况,这将是完美的(至少我认为)。
虽然由于我对 JS 的理解仍然有限,但我无法弄清楚如何做到这一点。
我知道您需要某种选择器类来选择图像。然后需要有一个click 事件将所选图像移动到您单击的div。
只是为了您的娱乐,我无法超越THIS。
感谢任何帮助或提示!
【问题讨论】:
-
您可以使用 .click 或 .draggable
-
我明白了,虽然我也不知道怎么用。我目前正在查看 .mouseup 来实现我想要的效果。您能否给我更多信息@Yaron?
标签: javascript jquery appendto