简体   繁体   English

将Hr元素替换为适用于Hangman游戏的正确字母-javascript

[英]Replace hr element with correct letters for Hangman game - javascript

After generating the number of dashes according to the length of the word, how would I go about replacing these dashes with the correct letter the user inputs. 在根据单词的长度生成破折号之后,我将如何用用户输入的正确字母替换这些破折号。 In most examples, I have seen people using arrays for this purpose. 在大多数示例中,我已经看到人们为此目的使用数组。 But since my dashes are hr elements, how should I be doing this? 但是,由于我的破折号是hr元素,我应该怎么做?

The following is my javascript code: 以下是我的JavaScript代码:

var words = ['quaffle', 'bludger', 'pensieve', 'harry', 'lupin',
    'butterbeer', 'polyjuice', 'patronus', 'horcrux', 'voldemort'
];
correctletters = '';
missedletters = '';

function getRandomWord() {
    randomWord = words[Math.floor(Math.random() * words.length)];
    wordlength = randomWord.length;
}

function drawDashes() {
    for (var i = 0; i < wordlength; i++) {
        var dash = document.createElement("HR")
        document.body.appendChild(dash);
    }
}

function getGuess() {
    letterGuessed = document.getElementById("inputfield").value.toLowerCase();
    document.getElementById("inputfield").value = null;
    alert(randomWord);
    alert(letterGuessed);
    r = randomWord.includes(letterGuessed);

    if (r == true) {
        correctletters = correctletters + letterGuessed;
        alert("correct letters: " + correctletters);
    } else {
        missedletters = missedletters + letterGuessed;
        alert("missed letters: " + missedletters);
    }

    guess = missedletters + correctletters;
    displayGuessedLetters();
}


function displayGuessedLetters() {
    guessedletters = document.createElement("div");
    content = document.createTextNode(guess);
    guessedletters.appendChild(content);
    container = document.getElementById("inputcontainer");
    container.appendChild(guessedletters);
    guessedletters.style.cssText = 'font-family: "Josefin Sans"; font-size: 
    30 px;
    text - transform: uppercase;
    color: rgb(255, 85, 49);
    ';
}

function replaceDashes() {
    /*Code to replace dashes here.*/
}

You can do this as: 您可以这样做:

function replaceDashes()
{
   var list = document.getElementsByTagName("hr")[0];
   list.parentNode.removeChild(list);
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM