杰网资源 Design By www.escxy.com
本文实例为大家分享了jQuery实现穿梭框效果的具体代码,供大家参考,具体内容如下
简介:今天给大家带来穿梭框的实现
布局的实现
<div id="box"> <div id="boxleft"> <ul id="left_ul"> </ul> </div> <div id="boxbtn"> <button id="btn_right"></button> <button id="btn_left"> <<<< </button> </div> <div id="boxright"> <ul id="right_ul"> </ul> </div> </div>
布局的样式
<style> * { margin: 0 auto; padding: 0; list-style: none; } #box { width: 500px; display: flex; justify-content: space-around; margin-top: 20px; } #boxright { width: 200px; height: 500px; border: 1px solid darkcyan; } #boxleft { width: 200px; height: 500px; border: 1px solid darkcyan; } #boxbtn { margin: auto; } #boxbtn button { width: 50px; height: 200ox; margin-top: 10px; display: flex; background: deepskyblue; cursor: pointer; color: white; } ul li { height: 30px; line-height: 30px; margin-bottom: 2px; text-align: center; background: darkgray; } form { text-align: center; } .active { color: white; background: darkseagreen; } </style>
代码实现
<script> let arr = [ { "id": 1, "name": "zhang", "check": false }, { "id": 2, "name": "liu", "check": false }, { "id": 3, "name": "guan", "check": false }, { "id": 4, "name": "zhao", "check": true }, { "id": 5, "name": "ao", "check": true } ]; $("#add").click(function () { var name = $("#name").val(); arr.push({ "name": name }); showUL(arr); }) $(function () { showUL(arr); }) function showUL(arr) { var leftstr = ""; var rightstr = ""; for(let i in arr) { let { id, name, check } = arr[i]; if (check) { rightstr += ` <li _id="${id}">${name}</li> ` } else { leftstr += ` <li _id="${id}">${name}</li> ` } } $("#left_ul").html(leftstr); $("#right_ul").html(rightstr); } $("#left_ul").on("click", "li", function () { let index = arr.findIndex((v) => { return v.id == $(this).attr("_id"); }) if ($(this).hasClass('active')) { $(this).removeClass('active'); arr[index].check = false; } else { $(this).addClass('active'); arr[index].check = true; } }); $("#right_ul").on("click", "li", function () { let index = arr.findIndex((v) => { return v.id == $(this).attr("_id"); }) if ($(this).hasClass('active')) { $(this).removeClass('active'); arr[index].check = true; } else { $(this).addClass('active'); arr[index].check = false; } }); $("#btn_right").click(function () { if ($("#left_ul .active").length == 0) return false; showUL(arr); }) $("#btn_left").click(function () { if ($("#right_ul .active").length == 0) return false; showUL(arr); }) </script>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
jQuery,穿梭框
杰网资源 Design By www.escxy.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
杰网资源 Design By www.escxy.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。