Advertisement
Rnzler

Untitled

Apr 25th, 2020
957
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <p id="altmean" class="alt-meaning">{{Alternative Meanings}}</p>
  2. <div id="correctAnswer" style="display:none">{{Meaning}}</div>
  3.  
  4. <script>
  5. //Script for modifying 'Show Answer' behavior for Input types.
  6. var htmlTextNodes = [];
  7. var innerHTMLText = [];
  8. var htmlNodeLength = document.getElementById('typeans').childNodes.length;
  9. var typedAnswer;
  10. var correctAnswer;
  11. var firstBr = null;
  12. var secondBr;
  13.  
  14. //capture each node to array
  15. for (i = 0; i < htmlNodeLength; i++) {
  16. htmlTextNodes[i] = document.getElementById('typeans').childNodes[i];
  17. innerHTMLText[i] = document.getElementById('typeans').childNodes[i].innerHTML;
  18.  
  19. //locate <br> tags for output change markers
  20. if (document.getElementById('typeans').childNodes[i].nodeName == "BR") {
  21. console.log("Runs if BR");
  22. if (firstBr != null) {
  23. secondBr = i;
  24. } else {
  25. firstBr = i;
  26. };
  27. };
  28. };
  29.  
  30. //If answer is correct, firstBr will still be null, so must set to length of typeans.childNode
  31. if (firstBr == null) {
  32. firstBr = htmlNodeLength;
  33. };
  34.  
  35. //assemble typed and correct answer strings
  36. str2 = innerHTMLText.slice(0, firstBr).join("");
  37. var typeParse = str2.replace(/[(/\W, " ")]/g, ' ');
  38. var typedAnswer = typeParse.replace(/\s/g, '');
  39. var typedAnsDis = str2.replace(/[^A-Za-z0-9]/g, ' ');
  40. var typedUpper = typedAnswer.toUpperCase();
  41.  
  42. //typedUpper = "KITTEN"
  43. var corr = document.getElementById('correctAnswer');
  44. str = corr.innerHTML;
  45. var correctParse = str.replace(/[/\W, " "]/g, ' ');
  46. var correctAnswer = correctParse.replace(/\s/g, '');
  47.  
  48. //split alternative answers into array
  49. var getalt = document.getElementById('altmean');
  50. var altmean = getalt.innerHTML;
  51. altmean += ", "
  52. altmean += correctAnswer;
  53. var array = altmean.split(", ");
  54. for (var i = 0; i < array.length; i++) {
  55. array[i] = "" + array[i].toUpperCase() + "";
  56. array[i] = "" + array[i].replace(/[/\W, " "]/g, ' ');; + "";
  57. array[i] = "" + array[i].replace(/\s/g, ''); + "";
  58. }
  59.  
  60. //Modify answer output
  61. if ((array.indexOf(typedUpper) > -1) && (!(typedUpper == ""))) {
  62. var c = "<div class=\"animated fadeIn\" id='correct'>" + typedAnsDis + "</div>";
  63. var d = document.getElementById('typeans');
  64. d.innerHTML = c;
  65. } else {
  66. if (typedAnsDis == "") {
  67. typedAnsDis = "I DON'T REMEMBER!";
  68. }
  69. var e = "<div class=\"animated fadeIn\" id='incorrect'>" + typedAnsDis + "</div>";
  70. var f = document.getElementById('typeans');
  71. f.innerHTML = e;
  72. };
  73. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement