• CSS实现按钮YES-NO按钮+Jquery获取按钮状态。


    前几天我经理突然跟我说,能不能做一个开关按钮,需要过滤的一个标识。说实话,一个做后端我是懵逼状态的。

    不过网上资料很多,查了一遭,发现一个不错的哥们给出的案例,模仿一下成功实现,下面就自己总结一下:

    实现的效果如上,个人觉得丑爆了。

    下面是实现过程:

    HTML部分代码:
    <div class="testswitch">
    <input class="testswitch-checkbox" id="onoffswitch" type="checkbox">
    <label for="onoffswitch" class="testswitch-label">
    <span class="testswitch-inner" data-on="YES" data-off="NO"></span>
    <span class="testswitch-switch"></span>
    </label>
    </div>


    CSS部分代码:
    .testswitch {
    position: relative;
    float: left;
    45px;
    margin: 0;
    font-size: 0.6em;
    }

    .testswitch-checkbox {
    display: none;
    }

    .testswitch-label {
    display: block;
    overflow: hidden;
    cursor: pointer;
    border-radius: 20px;
    }

    .testswitch-inner {
    display: block;
    200%;
    margin-left: -100%;
    transition: margin 0.3s ease-in 0s;
    text-align: left;
    }

    .testswitch-inner::before,
    .testswitch-inner::after {
    display: block;
    float: right;
    50%;
    height: 20px;
    padding: 0;
    line-height: 1.8em;
    font-size: 8px;
    color: white;
    font-family: Trebuchet, Arial, sans-serif;
    font-weight: bold;
    box-sizing: border-box;
    }

    .testswitch-inner::after {
    content: attr(data-on);
    padding-left: 10px;
    background-color: #FFAB47;
    color: #FFFFFF;
    }

    .testswitch-inner::before {
    content: attr(data-off);
    padding-right: 10px;
    background-color: #3F9FE8;
    color: white;
    text-align: right;
    }

    .testswitch-switch {
    position: absolute;
    display: block;
    12px;
    height: 12px;
    margin: 4px;
    background: #FFFFFF;
    bottom: 5px;
    border-radius: 20px;
    transition: all 0.3s ease-in 0s;
    text-align: right;
    }

    .testswitch-checkbox:checked+.testswitch-label .testswitch-inner {
    margin-left: 0;
    }

    .testswitch-checkbox:checked+.testswitch-label .testswitch-switch {
    right: 0px;
    }
    Jquery部分代码:
    referrer="NO";
    $(document).ready(function () {
    $("#onoffswitch").on("click",function () {
    clickSwitch();
    });
    var clickSwitch=function () {
    if($("#onoffswitch").is(":checked")){
    console.log("YES");
    referrer="YES";
    $('.sp-start').css('display','none');
    $('.sp-close').css('display','block');
    }else {
    console.log("NO");
    referrer="NO";
    $('.sp-close').css('display','none');
    $('.sp-start').css('display','block');
    }
    }
    });
  • 相关阅读:
    结果偏见 (行为经济学)
    天下没有免费的午餐
    双环学习
    信息对称、网络效应
    为什么说盲维是认知升级的重要概念?
    给思维找一个支点
    风险是一种商品
    认知方法论第一课
    A*算法深入
    A*算法入门
  • 原文地址:https://www.cnblogs.com/qxh-beijing2016/p/11422168.html
Copyright © 2020-2023  润新知