div代替select,實現select的效果

再客戶端,如果使用select ,當拖動客戶端的時候,就會導致option脫離select 。所以我們要使用div代替select:

直接上代碼:

<div class="selectBox">
 <span id="inptSelect" class="seal-select">請選擇</span>
 <span class="ww_btn_Dropdown_arrow "></span>
 <div class="optionDiv">
  <ul>
    <li>初始護照</li>
     <li>初級護照</li>
     <li>中級護照</li>
     <li>高級護照</li>
     </ul>
   </div>
</div>

css

.selectBox {
  float: left;
  margin-top: 5px;
  position: relative;
  display: flex;
  width: 40%;
  max-width: 177px;
}

.ww_btn_Dropdown_arrow {
  width: 0;
  height: 0;
  border-width: 5px 4px;
  border-color: #828282 transparent transparent;
  border-style: solid;
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -2px;
  right: 8px;
}

.selectBox #inptSelect {
  width: 100%;
  padding: 2px 4px;
}

.selectBox .optionDiv {
  display: none;
  width: 100%;
  border: 1px solid #ddd;
  border-top: none;
  border-radius: 1px;
  background: #fff;
  margin-top: 26px;
  position: absolute;
  z-index: 100;
  border-radius: 2px;
}

.selectBox .optionDiv .ulShow {
  display: block;
}

.selectBox .optionDiv ul li {
  cursor: pointer;
  height: 26px;
  line-height: 26px;
  font-size: 13px;
  text-indent: 6px;
}

.selectBox .optionDiv ul li:hover {
  background: #4a77ac;
  color: #fff;
}

jq

 $('.selectBox #inptSelect').on('click', function () {
        $(this).siblings('.optionDiv').toggleClass('ulShow');
    });
    $('.selectBox  .optionDiv ul li').on('click', function () {
        var selTxt = $(this).text();
        $('.selectBox  #inptSelect').text(selTxt);
        $('.optionDiv').removeClass('ulShow');
    });

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章