Menu
Coddy logo textTech

חלון מודאלי (פתיחה/סגירה)

חלק מהיחידה JavaScript בפעולה במסלול ה-HTML של Coddy. שיעור 3 מתוך 27.

חלון מודאלי הוא חלון קטן שמופיע „מעל” הדף כדי למשוך את תשומת לב המשתמש. לרוב משתמשים בו לטופסי התחברות, להתראות או לאישורים. כך הוא עשוי להיראות: 

רעיונות מרכזיים:

  1. החלונית מוסתרת כברירת מחדל (display: none).
  2. לחיצה על כפתור „פתיחה” מפעילה את הפונקציה openModal() → מגדירה display: block.
  1. בתוך החלון המודאלי, כפתור הסגירה (×) מפעיל את הפונקציה closeModal() → מגדיר display: none.
  2. לעיתים קרובות אפשר גם לסגור אותו בלחיצה מחוץ לחלון המודאלי (על שכבת הכיסוי הכהה).
<!-- כפתור לפתיחת חלון מודאלי -->
<button onclick="openModal()">Open Modal</button>
<!-- שכבת כיסוי לחלון המודאלי + תוכן -->
<div id="overlay" style="display:none;">
  <div class="modal">
    <span onclick="closeModal()">×</span>
    <p>This is a modal window.</p>
  </div>
</div>
<script>
  function openModal() {
    document.getElementById("overlay").style.display = "block";
  }
  function closeModal() {
    document.getElementById("overlay").style.display = "none";
  }
</script>
challenge icon

אתגר

קל

יש לנו דף אינטרנט עם כפתורים בנושא החלל שמציגים עובדות מעניינות על החלל בחלון מודאלי. פונקציה בשם openModal מופעלת כשלוחצים על כפתור של עובדת חלל. המשימה שלך היא לכתוב את הקוד בתוך openModal כך שהחלון המודאלי יהיה גלוי.

  • לשם כך, יש להגדיר את המאפיין display של הרכיב עם המזהה "fact" לערך "block".

נסו בעצמכם

<!DOCTYPE html>
<html>
<head>
  <title>Space Facts – Modal Example</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>

  <h1>Space Facts</h1>
  <p>Click the button below to learn something cool about space.</p>

  <!-- כפתורים שפותחים חלונות מודאליים -->
  <button onclick="openModal('fact')">Fact 1</button>

  <!-- שכבת כיסוי + תוכן החלון המודאלי -->
  <div id="overlay" class="overlay" onclick="closeModal()">
    <div id="fact" class="modal">
      <span class="close-btn" onclick="closeModal()">×</span>
      <h2>Shooting Stars</h2>
      <p>Shooting stars are actually tiny meteors burning up as they enter Earth’s atmosphere.</p>
    </div>
  </div>

  <script src="script.js"></script>
</body>
</html>
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה JavaScript בפעולה

תרגלו בעצמכם: Web אונליין