No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

crypto_seul.js 2.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. // select elements
  2. let codeTxtL1 = document.getElementById("codeTxtL1")
  3. let codeTxtL2 = document.getElementById("codeTxtL2")
  4. let button = document.getElementById("buttons")
  5. let mdp = "Le petit chaperon rouge"
  6. let mdpletters = mdp.replace(/ /g,'');
  7. let letters = []
  8. console.log(mdpletters);
  9. // functions
  10. function fillCases(div){
  11. var letterCase = document.createElement("input");
  12. letterCase.style.cssText = "background-color:white; margin:0vw 0.5vw 0vw 0.5vw; width:2.5vw; height:5vh; font-size:1.5vw; text-align:center;border-radius:0.5vw;"
  13. div.appendChild(letterCase)
  14. letters.push(letterCase)
  15. }
  16. function fillBlanks(div){
  17. var spaceCase = document.createElement("div")
  18. spaceCase.style.cssText = "width:3vw; height:5vh; margin:0vw 0.5vw 0vw 0.5vw; ";
  19. div.appendChild(spaceCase)
  20. }
  21. function styleMdp() {
  22. for (let i=0;i<mdp.length;i++){
  23. if (i > 8){
  24. if (mdp[i] === ' '){
  25. fillBlanks(codeTxtL2)
  26. } else {
  27. fillCases(codeTxtL2)
  28. }
  29. } else {
  30. if (mdp[i] === ' '){
  31. fillBlanks(codeTxtL1)
  32. } else {
  33. fillCases(codeTxtL1)
  34. }
  35. }
  36. }
  37. }
  38. function colorLetters(index){
  39. for (let i=0;i<letters.length;i++){
  40. if (mdpletters[i] === mdpletters[index]){
  41. letters[i].style.cssText = "background-color:#014bac; margin:0vw 0.5vw 0vw 0.5vw; width:2.5vw; height:5vh; font-size:1.5vw; text-align:center;border-radius:0.5vw;"
  42. }
  43. }
  44. }
  45. function decolorLetters(){
  46. for (let i=0;i<letters.length;i++){
  47. letters[i].style.cssText = "background-color:white; margin:0vw 0.5vw 0vw 0.5vw; width:2.5vw; height:5vh; font-size:1.5vw; text-align:center;border-radius:0.5vw;"
  48. }
  49. }
  50. function changeSameLetters(event,index){
  51. for (let i=0;i<letters.length;i++){
  52. if (mdpletters[i] === mdpletters[index]){
  53. letters[i].value = event.target.value
  54. }
  55. }
  56. }
  57. function verif(){
  58. for (let i=0;i<letters.length;i++){
  59. if (mdpletters[i] === letters[i].value){
  60. letters[i].style.cssText = "background-color:#057B26; margin:0vw 0.5vw 0vw 0.5vw; width:2.5vw; height:5vh; font-size:1.5vw; text-align:center;border-radius:0.5vw;"
  61. } else {
  62. letters[i].style.cssText = "background-color:#BF0909; margin:0vw 0.5vw 0vw 0.5vw; width:2.5vw; height:5vh; font-size:1.5vw; text-align:center;border-radius:0.5vw;"
  63. }
  64. }
  65. }
  66. styleMdp()
  67. // listeners
  68. for (let i=0;i<letters.length;i++){
  69. letters[i].addEventListener("focus",function(){
  70. colorLetters(i)
  71. })
  72. letters[i].addEventListener("blur",decolorLetters)
  73. letters[i].addEventListener("change",function(event){
  74. changeSameLetters(event,i)
  75. })
  76. }
  77. button.addEventListener("click",verif)