Avatar billede Thomasrn Seniormester
27. juli 2022 - 20:36 Der er 5 kommentarer

gem position drag and drop

hej har lavet en hjemmeside hvor jeg har lavet en drag and drop og den virker fint men hvordan kan jeg gemme de positioner jeg drager dem over på så når smutter fra den side og tilbage på siden bliver de stående som jeg da jeg forlod siden?
på forhånd tak :D
Avatar billede bvirk Guru
27. juli 2022 - 21:21 #1
Avatar billede Thomasrn Seniormester
12. august 2022 - 15:50 #2
har kigget lidt på det men synes kun jeg kan local storage hvis man kan flytte rundt på de forskellige "diver" over alt på hjemme siden har lavet nogle forskellige kasser hvor du kan flytte dem i og skal så huske de kasser hvor der er spiller i kan man bruge local storage til det for kan ikke rigtig finde noget om det
Avatar billede bvirk Guru
12. august 2022 - 20:16 #3
Jeg har ikke prøvet at gemme koordinater serverside eller i local storage - fandt bare et link fordi jeg synes dit spørgsmål var interessant.
Har selv brugt draggable vha  jqueryui til at finde koordinater som blev brugt i css efterfølgende, men jeg læste dem bare ud i en ny fane som kode og snuppede kode med klippeværktøjet og puttede det i css filen.

Her er eventen knappen kaldte

function bodyBGStyle() {
    let bgPos="background-position: ";
    let bgImg="background-image: ";
    let bgRep="background-repeat: ";
    $('img').each(function() {
            let jsel = $('#'+$(this).attr("id"));
            ['left','top'].forEach(function(p) { bgPos +=jsel.css(p)+" ";});
            bgPos += ", ";
            bgImg +="url("+jsel.attr("src")+"),";
            bgRep +="no-repeat,";
        });
    pnt("body {\n"
        +bgImg.slice(0,-1)+";\n"
        +bgPos.slice(0,-2)+";\n"
        +bgRep.slice(0,-1)+";\n}"
        );
}

som anvender:

function pnt(mes) {
    let tab = window.open('about:blank', '_blank');
    tab.document.write("<pre>\n"+mes+"\n</pre>");
    tab.document.close();
}
Avatar billede Thomasrn Seniormester
05. september 2022 - 22:31 #4
prøver lige at lave et opslag hvor koden indgår class drag 2 er det billede jeg drager rundet med
<div class="drag2">
<img id="drag16" src="troeje.png" draggable="true" ondragstart="drag(event)" width="25" height="25">
</div>

er et af de felter jeg dropper mit billede ind i
  <div id="div3" ondrop="drop(event)" ondragover="allowDrop(event)"></div>

er der nogle der har en ide hvordan det felter gemmer at det billede er draget i det så når jeg refresher er det i samme billede der er i den boks?
Avatar billede Thomasrn Seniormester
18. november 2022 - 05:33 #5
vil lige spørge grunden til jeg kan have flere i samme position/slot er vel denne kode
<script>
function allowDrop(ev) {
  ev.preventDefault();
}

function drag(ev) {
  ev.dataTransfer.setData("text", ev.target.id);
}

function drop(ev) {
  ev.preventDefault();
  var data = ev.dataTransfer.getData("text");
  ev.target.appendChild(document.getElementById(data));
}

</script>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester