js下拉框选择图片

 

二种方式:下拉框里面选项有图片与没有图片

1.用下拉框写  下拉框的option没法添加图片如果下拉框里面不需要图片可以用这种方式。

复制代码
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
            img{
                width:25px;
            }
        </style>
    </head>
    <body>
        <img src="img/index.png"/>
        <select >
            <option value="img/index.png">首页</option>
            <option value="img/logo.png">动漫</option>
            <option value="img/select.png">电影</option>
            <option value="img/loading.gif">博客</option>
        </select>
        <script>
            var main=document.querySelector("select");
            var img=document.querySelector("img");
            main.onchange=function(){
                img.setAttribute("src",this.value);
            }
        </script>
    </body>
</html>
复制代码

 


2.用列表模拟下拉框 下拉框里面需要图片可以用这种方式。

复制代码
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            .box{
                width: 250px;
            }
            .box-item{
                height: 50px;
                line-height: 50px;
            }
            .box-item img{
                width: 25px;
                vertical-align: middle;
            }
            ul{
                display: none;
                width: 100%;
                list-style: none;

            }
            li{
                height: 30px;
                line-height: 30px;
            }
            li:hover{
                background: #FFC0CB;
            }
            li img{
                width:25px;
                vertical-align: middle;
            }
            
        </style>
    </head>
    <body>
        <div class="box">
            <div class="box-item">
                <img src="img/index.png"/>
                请选择
            </div>
            <ul>
                <li>
                    <img src="img/index.png"/>
                    首页
                </li>
                <li>
                    <img src="img/logo.png"/>
                    首页1
                </li>
                <li>
                    <img src="img/index.png"/>
                    首页2
                </li>
            </ul>
            
        </div>
        <script>
            var ul = document.querySelector("ul");

            var boxContent = document.querySelector(".box-item");
        //点击下拉框显示并阻止冒泡,防止触发document上写的隐藏下拉框函数
            boxContent.onclick = function(e) {
                var e = e || window.event;
                ul.style.display = "block";
                e.stopPropagation();
            };
        //选择选项替换你内容,并隐藏        
for(var i=0;i<li.length;i++){
                li[i].onclick=function(){
                    boxContent.innerHTML =this.innerHTML;
                    ul.style.display = "none";
                }
            }         //点击document隐藏下拉框 选择框显示但不做选择时点击页面选择框隐藏 document.onclick
= function() { ul.style.display = "none"; } </script> </body> </html>
复制代码

 

posted @   雪旭  阅读(4681)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示