Архитектурный шаблон "Мрак в моделях" на нескольких языках и платформах
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.

57 lines
1.3KB

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Память | Memory</title>
  5. </head>
  6. <body>
  7. </body>
  8. <script src="../shared/model.web.js"></script>
  9. <script>
  10. function memoryItemPositions(M) {
  11. var pos = []
  12. for (var i = 0; i < M.itemsCount; i++) {
  13. let row = Math.floor(i / 4)
  14. let x = memoryGap() + (i - row * 4) * memoryGap()
  15. let y = memoryGap() + row * memoryGap()
  16. pos.push([x, y])
  17. }
  18. return pos
  19. }
  20. </script>
  21. <script>
  22. var items = []
  23. // Section16Buttons.
  24. for (var i = 0; i < 16; i++) {
  25. let item = document.createElement("div")
  26. document.body.appendChild(item)
  27. items.push(item)
  28. item.id = `${i}`
  29. }
  30. // SectionGrid.
  31. var M = {
  32. itemsCount: items.length
  33. };
  34. let positions = memoryItemPositions(M);
  35. for (var id in positions) {
  36. var p = positions[id]
  37. var item = items[id];
  38. item.style.left = `${p[0]}px`
  39. item.style.top = `${p[1]}px`
  40. item.style.width = `${memorySide()}px`
  41. item.style.height = `${memorySide()}px`
  42. item.style.position = "absolute"
  43. item.style.background = "blue"
  44. }
  45. // SectionSelection.
  46. for (let id in items) {
  47. var item = items[id]
  48. item.onclick = function() {
  49. console.log("ИГР select id:", id)
  50. }
  51. }
  52. </script>
  53. </html>