美文网首页首页投稿(暂停使用,暂停投稿)
下拉框模拟 select中option的背景色改变

下拉框模拟 select中option的背景色改变

作者: 洱月 | 来源:发表于2017-07-25 10:55 被阅读0次
  • 彤彤杰作

需要做一个类似select的下拉 但是样式有改变 option的hover样式谷歌浏览器不能更改,所以自定义

后期由于需要在页面任意地方点击能够关闭弹框,所以添加了遮罩层

下拉框模拟 select中option的背景色改变

.this_select_style{
    display:inline-block; 
    position:relative;
}
.this_select_style input{
    width:260px;
    /*padding: 5px 50px 5px 20px;*/
    padding-left:5px;
    height: 35px;
    border: 1px solid #d8d8d8;
    box-sizing: border-box;
    border-radius: 5px;
    color: #999;
    background: url(../images/Mall_select.png) no-repeat 87% 54%;
}
.this_select_style ul{
    width:260px;
    border: 1px solid #d8d8d8;
    border-top:none;
    border-radius: 0 0 5px 5px;
    color: #999;
    padding:0;
    position:absolute;
    top:19px;
    background-color:#fff;
    z-index:9999;
    display:none;
    box-sizing: border-box;
}
.this_select_style .show_ul{
    border-radius:5px 5px 0 0;
    border-bottom:none;
    background:none;
}
.this_select_style ul li{
    width:100%; 
    padding: 5px 50px 5px 20px;
    cursor:pointer;
    box-sizing: border-box;
}
.this_select_style ul li:hover{
    color:#fff;
    background-color:#1bbc9b;
}
#mask{
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0);//为了测试,可以加上背景色
    position: fixed;
    left: 0;
    top:0;
    z-index: 999;
    display: none;
}


<div id="mask"></div>
<div class="this_select_style">
    <input type="text" readonly="true" class="selectmenu" style="background-color: #fff;" data-value="-1" value="等待发货收货"/>
    <ul>
        <li data-value="0">全部</li>
        <li data-value="1">待审核</li>
        <li data-value="1">已拒绝</li>
        <li data-value="1">等待发货收货</li>
        <li data-value="1">订单取消</li>
        <li data-value="1">交易结束</li>
    </ul>
</div>


//下拉框
 $('body').on('click', '.this_select_style .selectmenu', function () {
        $this = $(this);
        $this.toggleClass("show_ul");
        $this.next().toggle();
        $('#mask').show();
    });
    $('body').on('click', '.this_select_style li', function () {
        $this = $(this);
        var thisInput = $this.parent().siblings("input");
        thisInput.attr("data-value", $this.attr("data-value")).val($this.text()).toggleClass("show_ul");
        $this.parent().hide();
        $('#mask').hide();
    })
    $('body').on('click', function (e) {
        if(!$(e.target).hasClass('selectmenu'))
        {
            $('#mask').hide();
            $('.this_select_style .selectmenu').removeClass("show_ul");
            $('.this_select_style ul').hide();
        }
    })

我叫洱月,我愿意陪你到洱海风花雪月,你,看到我了吗?

相关文章

  • 下拉框模拟 select中option的背景色改变

    彤彤杰作 需要做一个类似select的下拉 但是样式有改变 option的hover样式谷歌浏览器不能更改,所以自...

  • select相关的指令

    概述 select指令实现的是下拉框的功能,一般会配合option指令以及ng-model指令使用。在select...

  • Vue实现全选和反选即Vue复选框增加全选功能

    导语:Vue中单选下拉框开发起来非常简单,直接select包裹一个带v-for的option即可 但是当我们...

  • vue中的select的坑

    1.下拉框的特性:如果select绑定的数据的值和option的value值一样,此时显示的就是该option的l...

  • select 下拉框样式

    原生的select下拉框其实挺方便的,直接把选项写入option就能得到一个流畅的下拉框,但是原生的样式也是让人忧...

  • Jquery设置下拉框select中的option选中

    Jquery对下拉框select默认选中和获取下拉框中值的。当select元素的值发生改变时,会发生触发chang...

  • Robot Framework-下拉框控制

    1. option 下拉框 下拉框采用option实现,例如: 针对这种下拉框,可以直接选用Robot Frame...

  • 2018-08-23

    jsday04 一、下拉框的内容左右移动 1.知识点: (1)select标签===下拉框;select元素中的 ...

  • CSS—IOS兼容性问题

    1. 苹果手机滑动平缓效果 2. 在IOS中select下拉框会出现黑背景 在IOS中,select下拉框会出现黑...

  • iselect

    使用方法 模拟select 会触发 原生select 的onchange 事件,改变select 值。

网友评论

    本文标题:下拉框模拟 select中option的背景色改变

    本文链接:https://www.haomeiwen.com/subject/vqlwkxtx.html