我正在为我的JavaScript游戏创建广告资源系统,并且达到了我的第一个问题。这是我的HTML和JavaScript代码:
HTML
<div class="body backpack">
<div class="itemSlot">
<div class="item" draggable="true">
<svg width="24" height="24" viewBox="0 0 24 24">
<path d="M23,12L20.56,9.22L20.9,5.54L17.29,4.72L15.4,1.54L12,3L8.6,1.54L6.71,4.72L3.1,5.53L3.44,9.21L1,12L3.44,14.78L3.1,18.47L6.71,19.29L8.6,22.47L12,21L15.4,22.46L17.29,19.28L20.9,18.46L20.56,14.78L23,12M13,17H11V15H13V17M13,13H11V7H13V13Z"></path>
</svg>
<div class="itemInfo">
<h4>Wooden Sword</h4>
<p>Lorem </p>
</div>
</div>
</div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
<div class="itemSlot"></div>
</div>
JavaScript
$(document).ready(function(){
var draggedItem;
$(".item").on("dragstart", function(ev){
draggedItem = this;
console.log(draggedItem)
})
$(".itemSlot").on("dragover", function(ev){
console.log("You can drop it here!")
})
$(".item").on("drop", function(ev){
console.log("test")
})
});
您可以在https://codepen.io/anon/pen/oMvQgQ?editors=1111上查看运行中的代码。
当我拖动项目时,console.logs
是正确的;当我将鼠标悬停在可放置插槽上时,它也是console.logs
,但是当我拖放项目时,它没有 > console.log
。
我不知道我在做什么错。
谢谢您,祝您愉快。 :)
答案 0 :(得分:0)
您可能正在寻找dragstop事件:
$(".item").on("dragstop", function(ev){
console.log("test")
})
答案 1 :(得分:0)
$(document).ready(function(){
var draggedItem;
$(".item").on("dragstart", function(ev){
draggedItem = this;
console.log(draggedItem)
})
$(".itemSlot").on("dragover", function(ev){
event.preventDefault();
console.log("You can drop it here!")
})
$(".item").on("drop", function(ev){
console.log("test")
})
});