Remembering positions when deleting entries in javascript












0















I am creating a card game which should have the following functionality:




  1. 3 Cards gets on the board on position 0, 1 and 2 -> [0][1][2]

  2. The user can pick one of the cards

  3. The chosen card needs to be removed, and the remaining two cards needs to move a position higher. Then a new card should be added to position 0.


Examples ([X] is an empty/non existing card):




  • User picks card on position 2 -> [0][1][2]

  • User picks card on position 0 -> [0][X][2][3]

  • User picks card on position 1 -> [0][1][X][3]


The idea is that whenever a card hits position 5, no other cards but that can be chosen. I am a bit lost of how to create this, so I'd appreciate any help.



I currently got the following code to add a card to the board:



 function addCardToBoard() {
let curCard = myDeck.getCard();
let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
$(cardHtml).prependTo("#cards").on("click", function() {
$(this).remove();
clickCard(curCard);
});
}


and a method function clickCard(myCard){} to discover a click on a certain card.










share|improve this question























  • Looks like Dux and Seb are in the same class: stackoverflow.com/questions/53422581/…

    – Randy Casburn
    Nov 22 '18 at 1:22













  • I don't believe that it is the same problem at all. But if it is, I doubt we are, since this is a personal project besides all studies :)

    – Seb
    Nov 22 '18 at 1:25











  • The coincidence of timing was funny. I really did that so you would have a reference to each others work. May help, may not.

    – Randy Casburn
    Nov 22 '18 at 1:30
















0















I am creating a card game which should have the following functionality:




  1. 3 Cards gets on the board on position 0, 1 and 2 -> [0][1][2]

  2. The user can pick one of the cards

  3. The chosen card needs to be removed, and the remaining two cards needs to move a position higher. Then a new card should be added to position 0.


Examples ([X] is an empty/non existing card):




  • User picks card on position 2 -> [0][1][2]

  • User picks card on position 0 -> [0][X][2][3]

  • User picks card on position 1 -> [0][1][X][3]


The idea is that whenever a card hits position 5, no other cards but that can be chosen. I am a bit lost of how to create this, so I'd appreciate any help.



I currently got the following code to add a card to the board:



 function addCardToBoard() {
let curCard = myDeck.getCard();
let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
$(cardHtml).prependTo("#cards").on("click", function() {
$(this).remove();
clickCard(curCard);
});
}


and a method function clickCard(myCard){} to discover a click on a certain card.










share|improve this question























  • Looks like Dux and Seb are in the same class: stackoverflow.com/questions/53422581/…

    – Randy Casburn
    Nov 22 '18 at 1:22













  • I don't believe that it is the same problem at all. But if it is, I doubt we are, since this is a personal project besides all studies :)

    – Seb
    Nov 22 '18 at 1:25











  • The coincidence of timing was funny. I really did that so you would have a reference to each others work. May help, may not.

    – Randy Casburn
    Nov 22 '18 at 1:30














0












0








0








I am creating a card game which should have the following functionality:




  1. 3 Cards gets on the board on position 0, 1 and 2 -> [0][1][2]

  2. The user can pick one of the cards

  3. The chosen card needs to be removed, and the remaining two cards needs to move a position higher. Then a new card should be added to position 0.


Examples ([X] is an empty/non existing card):




  • User picks card on position 2 -> [0][1][2]

  • User picks card on position 0 -> [0][X][2][3]

  • User picks card on position 1 -> [0][1][X][3]


The idea is that whenever a card hits position 5, no other cards but that can be chosen. I am a bit lost of how to create this, so I'd appreciate any help.



I currently got the following code to add a card to the board:



 function addCardToBoard() {
let curCard = myDeck.getCard();
let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
$(cardHtml).prependTo("#cards").on("click", function() {
$(this).remove();
clickCard(curCard);
});
}


and a method function clickCard(myCard){} to discover a click on a certain card.










share|improve this question














I am creating a card game which should have the following functionality:




  1. 3 Cards gets on the board on position 0, 1 and 2 -> [0][1][2]

  2. The user can pick one of the cards

  3. The chosen card needs to be removed, and the remaining two cards needs to move a position higher. Then a new card should be added to position 0.


Examples ([X] is an empty/non existing card):




  • User picks card on position 2 -> [0][1][2]

  • User picks card on position 0 -> [0][X][2][3]

  • User picks card on position 1 -> [0][1][X][3]


The idea is that whenever a card hits position 5, no other cards but that can be chosen. I am a bit lost of how to create this, so I'd appreciate any help.



I currently got the following code to add a card to the board:



 function addCardToBoard() {
let curCard = myDeck.getCard();
let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
$(cardHtml).prependTo("#cards").on("click", function() {
$(this).remove();
clickCard(curCard);
});
}


and a method function clickCard(myCard){} to discover a click on a certain card.







javascript arrays append






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 22 '18 at 1:11









SebSeb

11




11













  • Looks like Dux and Seb are in the same class: stackoverflow.com/questions/53422581/…

    – Randy Casburn
    Nov 22 '18 at 1:22













  • I don't believe that it is the same problem at all. But if it is, I doubt we are, since this is a personal project besides all studies :)

    – Seb
    Nov 22 '18 at 1:25











  • The coincidence of timing was funny. I really did that so you would have a reference to each others work. May help, may not.

    – Randy Casburn
    Nov 22 '18 at 1:30



















  • Looks like Dux and Seb are in the same class: stackoverflow.com/questions/53422581/…

    – Randy Casburn
    Nov 22 '18 at 1:22













  • I don't believe that it is the same problem at all. But if it is, I doubt we are, since this is a personal project besides all studies :)

    – Seb
    Nov 22 '18 at 1:25











  • The coincidence of timing was funny. I really did that so you would have a reference to each others work. May help, may not.

    – Randy Casburn
    Nov 22 '18 at 1:30

















Looks like Dux and Seb are in the same class: stackoverflow.com/questions/53422581/…

– Randy Casburn
Nov 22 '18 at 1:22







Looks like Dux and Seb are in the same class: stackoverflow.com/questions/53422581/…

– Randy Casburn
Nov 22 '18 at 1:22















I don't believe that it is the same problem at all. But if it is, I doubt we are, since this is a personal project besides all studies :)

– Seb
Nov 22 '18 at 1:25





I don't believe that it is the same problem at all. But if it is, I doubt we are, since this is a personal project besides all studies :)

– Seb
Nov 22 '18 at 1:25













The coincidence of timing was funny. I really did that so you would have a reference to each others work. May help, may not.

– Randy Casburn
Nov 22 '18 at 1:30





The coincidence of timing was funny. I really did that so you would have a reference to each others work. May help, may not.

– Randy Casburn
Nov 22 '18 at 1:30












1 Answer
1






active

oldest

votes


















0














This fixed the issue. Creating an array and adding the elements and then sending further the index of the card instead of the card itself.



function addCardToBoard() {
let curCard = myDeck.getCard();
cardsArray.unshift(curCard);
let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
$(cardHtml).prependTo("#cards").on("click", function() {
$(this).remove();
clickCard(cardsArray.indexOf(curCard));
});
}





share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53422594%2fremembering-positions-when-deleting-entries-in-javascript%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    This fixed the issue. Creating an array and adding the elements and then sending further the index of the card instead of the card itself.



    function addCardToBoard() {
    let curCard = myDeck.getCard();
    cardsArray.unshift(curCard);
    let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
    $(cardHtml).prependTo("#cards").on("click", function() {
    $(this).remove();
    clickCard(cardsArray.indexOf(curCard));
    });
    }





    share|improve this answer




























      0














      This fixed the issue. Creating an array and adding the elements and then sending further the index of the card instead of the card itself.



      function addCardToBoard() {
      let curCard = myDeck.getCard();
      cardsArray.unshift(curCard);
      let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
      $(cardHtml).prependTo("#cards").on("click", function() {
      $(this).remove();
      clickCard(cardsArray.indexOf(curCard));
      });
      }





      share|improve this answer


























        0












        0








        0







        This fixed the issue. Creating an array and adding the elements and then sending further the index of the card instead of the card itself.



        function addCardToBoard() {
        let curCard = myDeck.getCard();
        cardsArray.unshift(curCard);
        let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
        $(cardHtml).prependTo("#cards").on("click", function() {
        $(this).remove();
        clickCard(cardsArray.indexOf(curCard));
        });
        }





        share|improve this answer













        This fixed the issue. Creating an array and adding the elements and then sending further the index of the card instead of the card itself.



        function addCardToBoard() {
        let curCard = myDeck.getCard();
        cardsArray.unshift(curCard);
        let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
        $(cardHtml).prependTo("#cards").on("click", function() {
        $(this).remove();
        clickCard(cardsArray.indexOf(curCard));
        });
        }






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 22 '18 at 11:05









        SebSeb

        11




        11
































            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53422594%2fremembering-positions-when-deleting-entries-in-javascript%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Can a sorcerer learn a 5th-level spell early by creating spell slots using the Font of Magic feature?

            Does disintegrating a polymorphed enemy still kill it after the 2018 errata?

            A Topological Invariant for $pi_3(U(n))$