zoukankan      html  css  js  c++  java
  • 移动端单选插件-jquery

    <!DOCTYPE html>
    <html>

    <head>
    <meta charset="UTF-8">
    <title></title>
    <meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport">
    <style>
    * {
    margin: 0;
    padding: 0;
    }

    .clear::after {
    content: ".";
    clear: both;
    display: block;
    overflow: hidden;
    font-size: 0;
    height: 0;
    }

    .singleSelect .singleSelectMask {
    position: fixed;
    100%;
    height: 100%;
    top: 0;
    left: 0;
    background: black;
    opacity: .5;
    }

    .singleSelect .singleSelectContent {
    position: fixed;
    bottom: 0;
    left: 0;
    background: white;
    100%;
    font-size: 12px;
    }

    .singleSelect .fr {
    float: right;
    }

    .singleSelect .fl {
    float: left;
    }

    .singleSelect .singleSelectButton {
    padding: 10px 20px;
    border-bottom: 1px solid #ededed;
    }

    .singleSelect .selectItem {
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
    }

    .singleSelect .selectItemActive {
    background: #81B1FF;
    }

    .singleSelect .selectItemCon {
    height: 200px;
    overflow: auto;
    }

    .select {
    height: 40px;
    200px;
    line-height: 40px;
    position: relative;
    border: 1px solid black;
    }

    .select::after {
    pointer-events: none;
    position: absolute;
    right: 10px;
    top: 50%;
    content: "";
    display: block;
    20px;
    height: 20px;
    margin-top: -10px;
    background: url("./arrowDown.png") no-repeat center;
    background-size: contain
    }
    </style>
    <script src="./js/jquery-3.3.1.min.js"></script>
    </head>

    <body>
    <div id="input" class="select" value="774777">9299</div>
    <div id="input1" class="select" value="774777">9299</div>
    <script>
     
    (function ($) {
    $.fn.singleSelct = function (data,fn) {
    var that = $(this)
    this.each(function () {
    var str = '<div class="singleSelect">' +
    '<div class="singleSelectMask"></div>' +
    '<div class="singleSelectContent">' +
    '<div class="singleSelectButton clear">' +
    '<span class="fl singleCancel">取消</span>' +
    '<span class="fr singleOver" style="color:#81B1FF">完成</span>' +
    '</div>' +
    '<div class="selectItemCon">@@@@</div>' +
    '</div> ' +
    '</div>';
    var itemstr = ""
    for (var i = 0; i < data.length; i++) {
    itemstr += '<div class="selectItem" value="' + data[i]["value"] + '">' + data[i]
    ["name"] + '</div> '
    }
    str = str.replace("@@@@", itemstr);
    $(this).click(function () {

    $("body").append(str)
    if ($(this).attr("value")) {
    $(".selectItem[value=" + $(this).attr("value") + "]").addClass(
    "selectItemActive")
    }
    $(".selectItem").click(function () {
    $(this).addClass("selectItemActive")
    $(this).siblings().removeClass("selectItemActive")
    })
    $(".singleCancel").click(function () {
    $(".singleSelect").remove()
    return false
    })
    $(".singleOver").click(function () {
    if ($(".selectItemActive").length == 0) {
    $(".singleSelect").remove()
    return
    }
    that.attr("value", ($(".selectItemActive").attr("value")))
    fn($(".selectItemActive").attr("value"))
    that.html($(".selectItemActive").html())
    $(".singleSelect").remove()
    return false
    })
    })
    });
    };
    })(jQuery);

    $("#input").singleSelct([{
    name: 999,
    value: 7755777
    }, {
    name: 9991,
    value: 773777
    }, {
    name: 9299,
    value: 774777
    },],function(val){
    alert(val)
    })

     
    </script>
    </body>

    </html>
  • 相关阅读:
    学点 C 语言(40): 函数 多参函数
    存取 ListBox 列表 回复 "徐强" 的问题
    博客园RSS订阅汇总
    博客园电子期刊2012年2月刊发布啦
    上周热点回顾(3.53.11)
    博客园电子期刊2012年3月刊发布啦
    上周热点回顾(3.264.1)
    上周热点回顾(3.193.25)
    上周热点回顾(4.24.8)
    上周热点回顾(2.273.4)
  • 原文地址:https://www.cnblogs.com/liuhao-web/p/11270672.html
Copyright © 2011-2022 走看看