Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] Funkcja się duplikuje
Topcio82
post 14.04.2020, 21:49:25
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 1
Dołączył: 2.03.2020

Ostrzeżenie: (0%)
-----


Witajcie
Mam pytanko, może i głupie dla was, ale nie mogę sobie sam poradzić.

Mam funkcję
  1. let buttonClose = function() {
  2.  
  3. if (window.innerWidth / widthPropotion > window.innerHeight / heightProportions) {
  4. closeButton.style.top = `0px`;
  5. closeButton.style.right = ((window.innerWidth - ((window.innerHeight / heightProportions) * widthPropotion)) / 2) + `px`;
  6. };
  7. if (window.innerWidth / widthPropotion < window.innerHeight / heightProportions) {
  8. closeButton.style.top = (window.innerHeight - ((window.innerWidth / widthPropotion) * heightProportions) - (window.innerHeight - (window.innerWidth / widthPropotion) * heightProportions) / 2) + `px`;
  9. closeButton.style.right = `0px`;
  10. };
  11.  
  12. closeButton.style.display = `block`;
  13. $(closeButton).on('click', function(event) {
  14. event.stopPropagation();
  15. closeButton.classList.add(`zoomInImage`);
  16. $(closeButton).one('webkitAnimationEnd...', function () {
  17. closeButton.classList.remove(`zoomInImage`);
  18. $(closeButton).css(`display`, `none`);
  19.  
  20. console.log(globalID.main);
  21. console.log(globalMenuID.main);
  22. console.log(globalMenuNextID.main);
  23. console.log(globalMenuNextChildID.main);
  24. console.log(globalTurfNextID.main);
  25. console.log(globalTurfNextChildID.main);
  26.  
  27. if (globalID.main == `turf`) {
  28.  
  29. if (
  30. (
  31. ( globalMenuNextChildID.main && !Number( globalMenuNextChildID.main ) ) ||
  32. ( globalMenuNextID.main && !Number( globalMenuNextID.main ) ) ||
  33. ( globalMenuID.main && !Number( globalMenuID.main ) )
  34. ) &&
  35. (
  36. !globalTurfNextChildID.main ||
  37. !globalTurfNextID.main
  38. )
  39. ) {
  40. if (globalMenuNextChildID.main) {
  41. console.log(`1`);
  42. eval(globalMenuNextID.main)(sX, sY);
  43. globalMenuNextChildID.main = 1;
  44. } else
  45. if (globalMenuNextID.main) {
  46. console.log(`2`);
  47. eval(globalMenuID.main)(sX, sY);
  48. globalMenuNextID.main = 1;
  49. } else
  50. if (globalMenuID.main) {
  51. console.log(`3`);
  52. eval(globalID.main)(sX, sY);
  53. globalMenuID.main = 1;
  54. }
  55. };
  56.  
  57. if (
  58. (
  59. !globalMenuNextChildID.main ||
  60. !globalMenuNextID.main ||
  61. !globalMenuID.main
  62. ) &&
  63. (
  64. ( globalTurfNextChildID.main && !Number( globalTurfNextChildID.main ) ) ||
  65. ( globalTurfNextID.main && !Number( globalTurfNextID.main ) )
  66. )
  67. ) {
  68. if (globalTurfNextChildID.main) {
  69. console.log(`4`);
  70. turfBuildings(globalTurfNextID.main);
  71. globalMenuNextID.main = 1;
  72. } else
  73. if (globalTurfNextID.main) {
  74. console.log(`5`);
  75. eval(globalID.main)(sX, sY);
  76. globalTurfNextID.main = 1;
  77. }
  78. };
  79.  
  80.  
  81. if (
  82. (
  83. ( globalMenuNextChildID.main && !Number( globalMenuNextChildID.main ) ) ||
  84. ( globalMenuNextID.main && !Number( globalMenuNextID.main ) ) ||
  85. ( globalMenuID.main && !Number( globalMenuID.main ) )
  86. ) &&
  87. (
  88. ( globalTurfNextChildID.main && !Number( globalTurfNextChildID.main ) ) ||
  89. ( globalTurfNextID.main && !Number( globalTurfNextID.main ) )
  90. )
  91. ) {
  92. if (globalMenuNextChildID.main) {
  93. console.log(`6`);
  94. eval(globalMenuNextID.main)(sX, sY);
  95. globalMenuNextChildID.main = 1;
  96. } else
  97. if (globalMenuNextID.main) {
  98. console.log(`7`);
  99. eval(globalMenuID.main)(sX, sY);
  100. globalMenuNextID.main = 1;
  101. } else
  102. if (globalTurfNextChildID.main) {
  103. console.log(`8`);
  104. turfBuildings(globalTurfNextID.main);
  105. globalMenuNextID.main = 1;
  106. } else
  107. if (globalMenuID.main || globalTurfNextID.main) {
  108. console.log(`9`);
  109. eval(globalID.main)(sX, sY);
  110. globalMenuID.main = 1;
  111. globalTurfNextID.main = 1;
  112. }
  113. };
  114. };
  115.  
  116.  
  117. if (globalID.main == `primary`) {
  118. if (globalMenuNextChildID.main) {
  119. console.log(`6`);
  120. globalMenuNextChildID.main = null;
  121. eval(globalMenuNextID.main)(sX, sY);
  122. return;
  123. } else
  124. if (globalMenuNextID.main) {
  125. console.log(`7`);
  126. globalMenuNextID.main = null;
  127. eval(globalMenuID.main)(sX, sY);
  128. return;
  129. } else
  130. if (globalMenuID.main) {
  131. console.log(`8`);
  132. globalMenuID.main = null;
  133. eval(globalID.main)(sX, sY);
  134. return;
  135. }
  136. };
  137. });
  138. });
  139. };


Uruchamiam ją za każdym razem gdy wejdę w jakieś podmenu.
Problem polega na tym, że ona się tak jakby duplikuje.
Za pierwszym razem po naciśnięciu guzika zamknij dostaję w konsoli
  1. 01_Body.js:16 DOM is Fully Load
  2. 01_Body.js:172 Function: Media Query Matches.
  3. 01_Body.js:180 Orientation: Landscape
  4. 01_Body.js:190 Device: Compatible
  5. 01_Body.js:1654 red_tile_04
  6. 01_Body.js:1678
  7. 01_Body.js:622 turf
  8. 01_Body.js:623 null
  9. 01_Body.js:624 null
  10. 01_Body.js:625 null
  11. 01_Body.js:626 red_tile_04
  12. 01_Body.js:627 null
  13. 01_Body.js:676 5


za drugim

  1. 01_Body.js:16 DOM is Fully Load
  2. 01_Body.js:172 Function: Media Query Matches.
  3. 01_Body.js:180 Orientation: Landscape
  4. 01_Body.js:190 Device: Compatible
  5. 01_Body.js:1654 red_tile_04
  6. 01_Body.js:1678
  7. 01_Body.js:622 turf
  8. 01_Body.js:623 null
  9. 01_Body.js:624 null
  10. 01_Body.js:625 null
  11. 01_Body.js:626 red_tile_04
  12. 01_Body.js:627 null
  13. 01_Body.js:676 5
  14. 01_Body.js:1654 red_tile_05
  15. 01_Body.js:1678 none
  16. 01_Body.js:622 turf
  17. 01_Body.js:623 null
  18. 01_Body.js:624 null
  19. 01_Body.js:625 null
  20. 01_Body.js:626 red_tile_05
  21. 01_Body.js:627 null
  22. 01_Body.js:676 5
  23. 01_Body.js:622 turf
  24. 01_Body.js:623 null
  25. 01_Body.js:624 null
  26. 01_Body.js:625 null
  27. 01_Body.js:626 1
  28. 01_Body.js:627 null



i tak bez końca
co ja robię źle.
Proszę pomóżcie



Przepraszam, zrobiłem edycję, a post się zrobił drugi raz. Nie wiem jak usunąć poprzedni

Dobra, już sobie naprawiłem

Pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 10:50