Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <p id="altmean" class="alt-meaning">{{Alternative Meanings}}</p>
- <div id="correctAnswer" style="display:none">{{Meaning}}</div>
- <script>
- //Script for modifying 'Show Answer' behavior for Input types.
- var htmlTextNodes = [];
- var innerHTMLText = [];
- var htmlNodeLength = document.getElementById('typeans').childNodes.length;
- var typedAnswer;
- var correctAnswer;
- var firstBr = null;
- var secondBr;
- //capture each node to array
- for (i = 0; i < htmlNodeLength; i++) {
- htmlTextNodes[i] = document.getElementById('typeans').childNodes[i];
- innerHTMLText[i] = document.getElementById('typeans').childNodes[i].innerHTML;
- //locate <br> tags for output change markers
- if (document.getElementById('typeans').childNodes[i].nodeName == "BR") {
- console.log("Runs if BR");
- if (firstBr != null) {
- secondBr = i;
- } else {
- firstBr = i;
- };
- };
- };
- //If answer is correct, firstBr will still be null, so must set to length of typeans.childNode
- if (firstBr == null) {
- firstBr = htmlNodeLength;
- };
- //assemble typed and correct answer strings
- str2 = innerHTMLText.slice(0, firstBr).join("");
- var typeParse = str2.replace(/[(/\W, " ")]/g, ' ');
- var typedAnswer = typeParse.replace(/\s/g, '');
- var typedAnsDis = str2.replace(/[^A-Za-z0-9]/g, ' ');
- var typedUpper = typedAnswer.toUpperCase();
- //typedUpper = "KITTEN"
- var corr = document.getElementById('correctAnswer');
- str = corr.innerHTML;
- var correctParse = str.replace(/[/\W, " "]/g, ' ');
- var correctAnswer = correctParse.replace(/\s/g, '');
- //split alternative answers into array
- var getalt = document.getElementById('altmean');
- var altmean = getalt.innerHTML;
- altmean += ", "
- altmean += correctAnswer;
- var array = altmean.split(", ");
- for (var i = 0; i < array.length; i++) {
- array[i] = "" + array[i].toUpperCase() + "";
- array[i] = "" + array[i].replace(/[/\W, " "]/g, ' ');; + "";
- array[i] = "" + array[i].replace(/\s/g, ''); + "";
- }
- //Modify answer output
- if ((array.indexOf(typedUpper) > -1) && (!(typedUpper == ""))) {
- var c = "<div class=\"animated fadeIn\" id='correct'>" + typedAnsDis + "</div>";
- var d = document.getElementById('typeans');
- d.innerHTML = c;
- } else {
- if (typedAnsDis == "") {
- typedAnsDis = "I DON'T REMEMBER!";
- }
- var e = "<div class=\"animated fadeIn\" id='incorrect'>" + typedAnsDis + "</div>";
- var f = document.getElementById('typeans');
- f.innerHTML = e;
- };
- </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement