Уведомления о значках предупреждений

знаете ли вы, как создавать уведомления, которые отображаются под колокольчиком уведомлений, не используя фиксированное положение? Я бы хотел иметь что-нибудь чистое и отзывчивое, если возможно. Большое Вам спасибо

const bell = document.querySelector("#bell");
const notifications = document.querySelector('#notifications');
const alertBtn = document.querySelector(".active-alert")


bell.addEventListener("click", () => {
  alertBtn.style.color =
    "white";
  notifications.innerHTML += `   <div class = "member">
    <li>
      <span>Notifaction 1</span>
    </li>   </div>   <div class = "member">
    <li>
      <span>Notifaction 2</span>
    </li>   </div>`;
});
.member {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin: auto;
  text-align: center;
  background-color: darkgrey;
}

#notifications {
  position: fixed;
  width: 50%;
  top: 70px;
  right: 0px;
}
<header>
  <div class = "header">
    <div class = "logo">
      <h1>YourApp™</h1>
    </div>
    <div class = "userProfile">
      <div class = "bell">
        <img id = "bell" src = "icons/icon-bell.svg" alt = "notifications" height = "30" width = "30" />
        <p class = "active-alert">&#9679;</p>
        <ul id = "notifications"></ul>
      </div>
      <div class = "user">
        <img src = "images/member-1.jpg" alt = "Image of member 1" title = "image_user_1">
        <p>Member 1</p>
      </div>
    </div>
  </div>
</header>

не могли бы вы добавить сюда изображения? используя живой URL? или ссылайтесь на мой старый ответ здесь stackoverflow.com/questions/31784519/…

Suresh Karia 12.11.2018 13:52

Привет, Джерард, спасибо за быстрый ответ. Если я удалю фиксированное положение, у меня будет следующее: file: /// D: / Sta% C5% BEen% C3% A9% 20soubory% 20HDD / desktop / FireSho‌ t% 20Capture% 20015% 20‌ -% 20Chart% 20Display% ‌ 20-% 20http ___ 127.0.0‌ .1_5500_index.html% 2‌ 3.png

MasterMind 12.11.2018 16:03

Если я все же исправил, то это: file: /// D: / Sta% C5% BEen% C3% A9% 20soubory% 20HDD / desktop / FireSho‌ t% 20Capture% 20014% 20‌ -% 20Chart% 20Display% ‌ 20-% 20http ___ 127.0.0‌ .1_5500_index.html% 2‌ 3.png

MasterMind 12.11.2018 16:04

Но я бы хотел, чтобы оно было более чище и уведомление сразу под профилем, если у вас есть идеи, дайте мне знать

MasterMind 12.11.2018 16:05
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
4
142
1

Ответы 1

См. ниже. Изменения задокументированы в исходном коде. Надеюсь это поможет.

const bell = document.querySelector("#bell");
const notifications = document.querySelector('#notifications');
const alertBtn = document.querySelector(".active-alert")


bell.addEventListener("click", () => {
  /* alertBtn.style.color = "white"; Removed */
  
  /* Hide button */
  alertBtn.style.display = "none";
  
  notifications.innerHTML += `   <div class = "member">
    <li>
      <span>Notifaction 1</span>
    </li>   </div>   <div class = "member">
    <li>
      <span>Notifaction 2</span>
    </li>   </div>`;
});
.member {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin: auto;
  text-align: center;
  background-color: darkgrey;
}

#notifications {
  /* position: fixed; Removed */
  width: 50%;
  /* top: 70px; Removed */
  /* right: 0px; Removed */
  padding: 0; /* Added */
  margin-top: 0 /* Added */
}

/* Added */
.bell {
  display: flex;
  flex-direction: column;
}
<header>
  <div class = "header">
    <div class = "logo">
      <h1>YourApp™</h1>
    </div>
    <div class = "userProfile">
      <div class = "bell">
        <img id = "bell" src = "icons/icon-bell.svg" alt = "notifications" height = "30" width = "30" />
        <p class = "active-alert">&#9679;</p>
        <ul id = "notifications"></ul>
      </div>
      <div class = "user">
        <img src = "images/member-1.jpg" alt = "Image of member 1" title = "image_user_1">
        <p>Member 1</p>
      </div>
    </div>
  </div>
</header>

Другие вопросы по теме