jquery实现穿梭框功能

时间:2021-05-26

本文实例为大家分享了jquery实现穿梭框功能的具体代码,供大家参考,具体内容如下

先上效果图

就只需要引用一个jq文件就可以

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>穿梭框</title> <link rel="stylesheet" href="index.css" > <script src="http://libs.baidu.com/jquery/1.8.3/jquery.min.js"></script> <style> .float{ float: left; } .float select{ width: 300px; border: 1px solid #ebeef5; height: 200px; } .top_title{ width: 298PX; height: 30px; border: 1px solid #ebeef5; border-top-left-radius: 4px; border-top-right-radius: 4px; line-height: 30px; background: #fbfbfb; display: flex; justify-content: space-between; } .last_num{ margin-right: 10px; } .search{ width: 300px; display: flex; } .search input{ float: left; flex: 4; height: 30px; outline: none; border: 1px solid #ebeef5; box-sizing: border-box; padding-left: 10px; } .search_button{ float: right; flex: 1; height: 30px; background-color: #f1f1f1; color: #000000; border-style: none; outline: none; cursor: pointer; } .search button i{ font-style: normal; } .search button:hover{ font-size: 16px; } .to_left,.to_right{ width: 20px; height:20px; color:white; background-color:#667082; border-radius: 100%; border-width: 0; margin: 0; outline: none; text-align: center; cursor: pointer; } button:hover{ background-color: #aa9a8a; } .click_button{ border-radius: 5px; background: #deded8; padding: 5px 0; margin: 115px 5px 0px 5px; } </style> </head> <body> <div> <div class="float"> <div class="top_title"> <div class="float_title"><label><input type="checkbox" class="left_checkbox">全选</label></div> <div class="float_title">标题</div> <div class="float_title last_num" ><span class="old_select_length">0</span>/<span class="old_total_length">0</span></div> </div> <div class="search"> <input class="old_search" type="text" placeholder="请输入..." name="" id="" value="" /> </div> <select multiple class="old_select"> <option value="1">11111</option> <option value="2">22222</option> <option value="3">33333</option> <option value="4">123</option> <option value="5">23312</option> <option value="6">23233</option> <option value="7">21233</option> <option value="8">12233</option> <option value="9">23133</option> </select> </div> <div class="float"> <div class="click_button"> <div><button class="to_left">></button></div> <div><button class="to_right"><</button></div> </div> </div> <div class="float"> <div class="top_title"> <div class="float_title"><label><input type="checkbox" class="right_checkbox">全选</label></div> <div class="float_title">标题</div> <div class="float_title last_num" ><span class="new_select_length">0</span>/<span class="new_total_length">0</span></div> </div> <div class="search"> <input class="new_search" type="text" placeholder="请输入..." name="" id="" value="" /> </div> <select multiple class="new_select"> <option value="1">11111</option> <option value="2">22222</option> <option value="3">33333</option> <option value="4">123</option> <option value="5">233</option> </select> </div> </div><script> //右上角的数字显示“” function length_return(){ var old_total_length= $(".old_select").find('option').length; var old_select_length= $(".old_select").find('option:selected').length; var new_total_length= $(".new_select").find('option').length; var new_select_length= $(".new_select").find('option:selected').length $(".old_total_length").text(old_total_length) $(".old_select_length").text(old_select_length) $(".new_total_length").text(new_total_length) $(".new_select_length").text(new_select_length) }; $(".to_left").click(function(){ var old_select= $(".old_select"); var new_select= $(".new_select"); old_select.find('option:selected').each(function () { new_select.append(this) }) length_return() }) $(".to_right").click(function(){ var old_select= $(".old_select"); var new_select= $(".new_select"); new_select.find('option:selected').each(function () { old_select.append(this) }) length_return() }) $(".left_checkbox").click(function(){ if($(this).is(":checked")){ $(".old_select").find('option').each(function () { $(this).attr("selected","selected") }) } else{ $(".old_select").find('option').each(function () { $(this).removeAttr("selected") }) } length_return() }) $(".right_checkbox").click(function(){ if($(this).is(":checked")){ $(".new_select").find('option').each(function () { $(this).attr("selected","selected") }) } else{ $(".new_select").find('option').each(function () { $(this).removeAttr("selected") }) } length_return() }) $("select").on("click","option",function(e){ if($(".left_checkbox").is(":checked")) { $('.left_checkbox').prop('checked', false); } length_return(); }) $("select").on("click","option",function(e){ if($(".right_checkbox").is(":checked")) { $('.right_checkbox').prop('checked', false); } length_return(); }) $(".old_search").on("input propertychange",function(event){ //进行查询操作 var old_select= $(".old_select"); var kw = $(this).val() if (!kw){ old_select.find("option").show() } old_select.find("option").each(function(){ if($(this).text().indexOf(kw) < 0) { $(this).hide() } }) }) $(".new_search").on("input propertychange" ,function(event){ var new_select=$(".new_select"); var kw=$(this).val() if(!kw){ new_select.find("option").show(); } new_select.find("option").each(function(){ if($(this).text().indexOf(kw)<0){ $(this).hide() } }) }) length_return()</script> </body></html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章