From 3a4e34eb41735f384e9a7a95343fab1b157754f7 Mon Sep 17 00:00:00 2001 From: Xnoe Date: Sun, 8 Aug 2021 14:00:52 +0100 Subject: [PATCH] Fixed Chrome incompatibility caused by Firefox violating web standards --- index.html | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index e810309..41b88d5 100644 --- a/index.html +++ b/index.html @@ -3,6 +3,8 @@ let deck; let resetDeck = []; let tmpNext; +let currentDragId; + const tableauWidth = 9; let values = [ @@ -35,10 +37,12 @@ let suits = [ ]; let allowdrop = event => { - if (event.dataTransfer.getData("x-solitaire/card") == "") + + console.log(event.dataTransfer.getData("x-solitaire/card")); + if (currentDragId == "") return; - let bottom = document.getElementById(event.dataTransfer.getData("x-solitaire/card")); + let bottom = document.getElementById(currentDragId); let bottom_gender = bottom.getAttribute("gender"); if (event.target.classList.contains("foundation") && @@ -80,6 +84,7 @@ let drop = event => { } event.dataTransfer.clearData("x-solitaire/card"); + currentDragId = ""; }; let recursiveValidateDraggable = element => { @@ -98,8 +103,10 @@ let recursiveValidateDraggable = element => { }; let drag = event => { - if (recursiveValidateDraggable(event.target)) + if (recursiveValidateDraggable(event.target)) { event.dataTransfer.setData("x-solitaire/card", event.target.id); + currentDragId = event.target.id; + } } let assembleRandomisedDeck = () => { @@ -146,7 +153,6 @@ window.addEventListener("DOMContentLoaded", () => { document.addEventListener("dragstart", drag); document.addEventListener("drop", drop); document.addEventListener("dragover", allowdrop); - document.addEventListener("dragover", allowdrop); deck = assembleRandomisedDeck(); let board = document.getElementById("board");