<button popovertarget="popover">ポップアップを表示</button>
<div popover id="popover">ポップアップの中身</div>
const button = document.querySelector('button');
const popover = document.querySelector('#popover');

button.addEventListener('mouseenter', () => {
  // ポップオーバーが既に表示されている場合は何もしない
  if (popover.matches(':popover-open')) return;
  popover.showPopover();
});

button.addEventListener('mouseleave', () => {
  // ポップオーバーが既に表示されていない場合は何もしない
  if (!popover.matches(':popover-open')) return;
  popover.hidePopover();
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.