2025-03-31下拉菜单和鼠标拖动

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>下拉菜单</title>

    <style>
        *{
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        html,body{
            width: 100%;
            height: 100%;
        }
        html{
            font-size: 10px;
        }
        
        .nav{
            width: 100%;
            height: 6rem;
            background-color: bisque;

            display: flex;
            justify-content: center;
        }
        .content{
            width: 40rem;
            height: 5rem;
            background-color: bisque;

            display: flex;
            justify-content: start;
            padding: 5px; 
        }
        .content .item{
            width: 10rem;
            height: 5rem;
            background-color: bisque;
            padding: 0 1rem; 

            display: flex;
            
            justify-content: center;
            
            align-items: center;
            position: relative;
        }
        .content .item:hover{
            background-color: rgb(210, 120, 233);
            color: yellow;
            cursor: pointer;
        }
        .content .item ul{
            position: absolute;
            top: 100%;
            left: 0;
            width: 10rem;
            background-color: rgb(146, 14, 223);

            display: none; 
            flex-direction: column;
            justify-content: center;
            align-items: center;
        } 
        .fu{
            background-color: rgb(146, 14, 223);

            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }
    </style>

</head>
<body>

    <div class="nav">

          <ul class="content">
              <li class="item">首页</li>

              <li class="item">文章
                <ul>
                  <li class="fu">我的文章</li>
                  <li class="fu">发表文章</li>
                </ul>
              </li>
              
              <li class="item">相册
                <ul>
                  <li class="fu">我的相册</li>
                  <li class="fu">发表相册</li>
                </ul>
             </li>
              
              <li class="item">消息
                <ul>
                  <li class="fu">我的私信</li>
                  <li class="fu">发表消息</li>
                </ul>
              </li>
          </ul>
    </div>

    <script>
        
        let menu1 = document.getElementsByClassName("item");
        
        for (let i = 0; i < menu1.length; i++) {
            menu1[i].onmouseenter = function () {
                
                let subMenu = this.getElementsByTagName("ul")[0];
                if (subMenu) {
                    
                    subMenu.style.display = "flex";
                }
            };
            menu1[i].onmouseleave = function () {
                
                let subMenu = this.getElementsByTagName("ul")[0];
                if (subMenu) {
                   
                    subMenu.style.display = "none";
                }
            };
        }
    </script>
</body>
</html>
屏幕截图 2025-03-31 155548.png
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>鼠标拖动</title>
    <style>
        #box{

        position: absolute;
        width: 400px;
        height: 300px;
        background: #a008db;
        }

    </style>
</head>
<body>
    <div id="box">
        <img src="img/IMG_3531.JPG" width="400px" height="300px">
    </div>
    <script>
    let box = document.getElementById("box")
    box.onmousedown = function(e) {
        let offsetX = e.offsetX
    let offsetY = e.offsetY
    console.log(offsetX, "offsetX")
    console.log(offsetY, "offsetY")
    document.onmousemove = function(e2) {
        let clientX = e2.clientX
        let clientY = e2.clientY
        console.log(clientX, "clientX")
        console.log(clientY, "clientY")
        _left = clientX - offsetX
        _top = clientY - offsetY
        console.log(_left, "left")
        console.log(_top, "top")
        if(_left < 0) {
        _left = 0;
         }
         if(_top < 0) {
            _top = 0
         }
         if(_left > document.documentElement.clientWidth - box.offsetWidth) {
            _left = document.documentElement.clientWidth - box.offsetWidth
         }
         box.style.left = _left + "px"
         box.style.top = _top + "px"
        }
    }
    document.onmouseup = function() {
        document.onmousemove = null
    }

    </script>
    
</body>
</html>
屏幕截图 2025-03-31 155804.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 三月最后一天了,该说点什么呢,时间的匆匆吗?四时的变幻吗?还是春日的希望与蓬勃呢? 行李在脚旁,未来在远方,那么是...
    爱学习的小浪花阅读 23评论 0 0
  • 今天就是这个月最后一天了,时间过得真快,今天来好好剖析下自己。 身世暂且不提,那是我心中永远的痛,虽已成年很多年,...
    沐童学阅读 31评论 0 0
  • 如果你能够认真码字,每天八百字,那积攒下来的力量也会是无穷无尽的,换一种心态和活法罢了,每个人都是独立的个体。
    一尘心语阅读 536评论 0 4
  • 题清-八大山人 《竹石图》 国破家亡哀朱耷, 牛失耳丢余八大。 危石无奈倚竹丛, 哭笑随之付书画。
    19f31e7d61ed阅读 23评论 0 0
  • 岁月带走了纯真,时光苍老了容颜。人生短暂,有得有失,生活艰辛,有苦有乐。快乐是心的愉悦,幸福是心的满足。 一个人快...
    长安心语阅读 36评论 0 3