Прежде всего, ваша работа не закончится, даже если вы можете открыть всплывающее окно, чтобы щелкнуть по каждому элементу списка.
Вам нужно будет сделать всплывающее окно, чтобы показать различное содержимое для каждого элемента списка, и вы скоро поймете, что вам нужны мощные инструменты, чтобы делать то, что вы хотите.
Существует множество инструментов, и самый простой из них - Vue. js
Однако я просто дам вам знать, как открыть всплывающее окно без Vue.js
. Изучите себя на их веб-сайте, если вам это интересно.
сначала удалите свойство onclick
из элемента .popup
.
<div class="popup">
<ul class="matchup">
<li class="team team-top">2015 Clayton Kershaw</li>
<li class="team team-bottom">2017 Jose Altuve</li>
</ul>
<div class="popuptext" id="myPopup">
<h1>Popup Text</h1>
</div>
</div>
Затем замените код javascript на этот .
// this `togglePopup` function works similarly with your `myFunction` function, but it caches the element selecting result for better performance.
const togglePopup = (() => {
const element = document.querySelector('#myPopup');
console.log(element)
return () => {
element.classList.toggle("show");
}
})();
// this finds all `li` elements inside `.matchup` element and make to execute `togglePopup` when one of those are clicked by user.
document.querySelectorAll('.matchup li').forEach(e => {
e.addEventListener('click', () => {
togglePopup()
})
})