为什么上段代码中离开.large 元素时,无法隐藏 .large 元素。
时间: 2024-04-14 07:25:30 浏览: 106
非常抱歉,我在之前的回答中犯了一个错误。在 `hide` 函数中,使用 `mouseover` 和 `mouseout` 事件监听器是无法实现隐藏 `.large` 元素的。正确的做法是使用 `mouseenter` 和 `mouseleave` 事件。
以下是修正后的代码:
```javascript
middle.addEventListener('mouseenter', show);
middle.addEventListener('mouseleave', hide);
large.addEventListener('mouseenter', show);
large.addEventListener('mouseleave', hide);
function show() {
clearTimeout(timeId);
large.innerHTML = `<img src=${middle.children[0].src} alt="">`;
large.style.display = 'block';
}
function hide() {
timeId = setTimeout(function () {
large.style.display = 'none';
}, 200);
}
```
在修正后的代码中,我将 `mouseover` 和 `mouseout` 改为了 `mouseenter` 和 `mouseleave`,这样就可以正确地隐藏 `.large` 元素了。
再次对之前的错误回答表示抱歉,希望这次能够解决您的问题。如果还有其他疑问,请随时提问。
阅读全文