鼠标跟随,鼠标放入图片不显示出来

题目描述

题目来源及自己的思路

相关代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

        .box {
            width: 500px;
            height: 150px;
            border: 10px solid #333;

            display: flex;
            justify-content: space-evenly;
            align-items: center;

            margin: 30px auto;
            /* position: relative; */
        }

        p {
            width: 100px;
            height: 100px;
        }

        img {
            width: 100%;
            height: 100%;
            display: block;
        }

        span {
            position: fixed;
            /* top: 0;
            left: 0; */
            width: 288px;
            height: 180px;
            display: none;
        }
    </style>
</head>

<body>
    <div class="box">
        <p><img src="1.png" alt="" /></p>
        <p><img src="2.png" alt="" /></p>
        <p><img src="3.png" alt="" /></p>
        <span>
            <img src="1.png" alt="" />
        </span>
    </div>
    <script>
        var ipImg = document.querySelectorAll("p>img");
        var spImg = document.querySelector("span>img");
        var box = document.querySelector(".box");
        for (var i in ipImg) {
            ipImg[i].onmouseenter = function () {
                console.log(this.src);
                spImg.innerText = `<img src='${this.src}'>`;
                spImg.style.display = "block";
            }
            ipImg[i].onmouseleave = function () {
                spImg.style.display = "none";
            }
        }
        box.onmouseenter = function (e) {
            var x = e.pageX;
            var y = e.pageY;
            spImg.style.left = x + 10 + "px";
            spImg.style.top = y + 10 + "px";
        }
    </script>

</body>

</html>

你期待的结果是什么?实际看到的错误信息又是什么?

阅读 1.6k
2 个回答

1.你这个代码 span display: none;这就有问题了,你的js改变的span下面的img 这回导致你怎么改都不会来

  1. 你在sspan下面的img标签写了innerText, 应该用src属性
    我修改过的代码请移步这里test
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题