今天刚刚完成了一个小功能:“仿微信公众平台的-打标签”,随笔记下欢迎纠错:

操作介绍:选择人物列表点击“打标签”按钮可实现对当前已选择的人物添加新的标签;
自己分析的实现思路:
1.点击“打标签”时要“知道”那些人物被选择了~~遍历当前人物列表
2.得到被选择人物列表后还得知道他们下面的标签都有啥~~遍历选择人物的标签列表
3.得到当前可以使用的标签列表~~额..还是遍历得到
废话讲的有点多。来几张图片压压惊。网页效果\(^o^)/~
1.加载完毕的初期“打标签”不可选没有功能。。
2.当任务列表有选择的时候可以点击“打标签”并弹窗显示可编辑的标签列表(列表内容取自右侧);
3.选择标签后确定修改当前已选择的人物的标签;
概流程就这样了,代码:
基本也页面结构:
html和css大家都会的就不写啦。。。下面是主要js代码:
function addLabel (){
$('.addLabel_divS_ul_s').find('li').remove();
$('#addLable_btn').css({'cursor':'pointer',"background":'#fff'});
$('#addLable_btn').on('click',function(){
// 向隐藏ul(即弹窗里的ul)中添加li
var $lis = $('.ulLabelS>.lable_list_li_append_li>.lable_list_li_strong_2'),
$addLabelDivSUlS = $('.addLabel_divS_ul_s'),
$inputAll = $('#queryPageForm input[type="checkbox"]'),
$inputLength = $inputAll.length;//人物列表
//循环已有的li列表放进备选ul中
for(let i=0 ; i<$lis.length; i++){
var $li = "<li class='addLabel_divS_ul_sLi' ><input type='checkbox'/>" + $($lis[i]).text() + "</li>";
//防止多次执行函数导致的多次添加
if($addLabelDivSUlS.find('li').length != $lis.length){
//console.log('zhixing ');
$addLabelDivSUlS.append($li);
};
}
//循环已勾选的人物列表读取已有的标签反显到备选ul的li中(li里面的input勾选)
for(let i=0; i< $inputLength; i++){
//判断当前人员列表是否被勾选 勾选的添加标签
if($($inputAll[i]).prop('checked')){
//$length : 人物固有标签的长度
var $thisLi = $($inputAll[i]).parent('.user_list_li_div_1').siblings('.user_list_li_div_2').find('.div2_lable_ul>li');
$length = $thisLi.length;//备选标签ul
for(let j = 0; j < $length ; j ++ ){
//console.log($($thisLi[j]).text());
for(let k = 0; k < $addLabelDivSUlS.find('li').length ; k++){
if($($thisLi[j]).text() == $($addLabelDivSUlS.find('li')[k]).text()){
$($addLabelDivSUlS.find('li')[k]).find('input').prop('checked',true)
}
}
}
}
};
$('#addLabel_divS_wrp').show();
$('#addLabel_divS').show();
});
}
上面是获取备选标签和“找到”选中的人物中的标签列表并在备选标签中进行勾选,当弹窗后我们还得知道当前人物列表哪个是选中的,我们在把选中的备选标签添加到当前选中的人物上,就实现修改标签的功能了。。。。。看下面。。。。
/*
* 取消 确定
*/
function clickBtnS (){
var $addLabelDivS = $('#addLabel_divS'),
inputAll = $('#queryPageForm input[type="checkbox"]');
//确定
$('.addLabel_divS_div1>.btn1').on('click',function(){
var $length = $('.addLabel_divS_ul_s>.addLabel_divS_ul_sLi');//备选标签ul
//找到勾选的li 添加当前勾选的标签 人物列表
for(let i=0; i< inputAll.length; i++){
//判断当前人员列表是否被勾选 勾选的添加标签
if($(inputAll[i]).prop('checked')){
$(inputAll[i]).parent('.user_list_li_div_1').siblings('.user_list_li_div_2').find('.div2_lable_ul').empty();
//循环已选择的li
for(let j = 0; j<$length.length;j ++){
if($($length[j]).find('input').prop('checked')){
//console.log($($length[j]).text());
var $li = "<li class='div2_lable_li'>"+ $($length[j]).text() +"</li>";
$(inputAll[i]).parent('.user_list_li_div_1').siblings('.user_list_li_div_2').find('.div2_lable_ul').append($li);
}
}
}
};
$('.addLabel_divS_ul_s').find('li').remove();
$('#addLabel_divS_wrp').hide();
$addLabelDivS.hide();
});
//取消
$('.addLabel_divS_div1>.btn2').on('click',function(){
$('.addLabel_divS_ul_s').find('li').remove();
$('#addLabel_divS_wrp').hide();
$addLabelDivS.hide();
});
};
至此就可以实现和微信的打标签相同的效果了。。也没看微信的源码不知道人家这么写的。。自知这个实现思路for循环有点多性能肯定不好(先实现功能在优化嘛。。嘿嘿)。。求指教哦。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# 微信
# 打标签
# 微信小程序 基础知识css样式media标签
# JS中静态页面实现微信分享功能
# JS 调用微信扫一扫功能
# JS实现微信弹出搜索框 多条件查询功能
# JavaScript微信定位功能实现方法
# 勾选
# 遍历
# 还得
# 都有
# 也没
# 并在
# 可以使用
# 可选
# 几张
# 时要
# 大家多多
# 就可以
# 不写
# 话讲
# 选择了
# 完成了
# 加载
# pre
# brush
相关文章:
动图在线制作网站有哪些,滑动动图图集怎么做?
建站之星×万网:智能建站系统+自助建站平台一键生成
如何有效防御Web建站篡改攻击?
重庆市网站制作公司,重庆招聘网站哪个好?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
电商网站制作公司有哪些,1688网是什么意思?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
如何在橙子建站中快速调整背景颜色?
婚礼视频制作网站,学习*后期制作的网站有哪些?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
如何在万网自助建站平台快速创建网站?
制作营销网站公司,淘特是干什么用的?
Swift中循环语句中的转移语句 break 和 continue
如何快速搭建高效简练网站?
如何在阿里云完成域名注册与建站?
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
如何在云服务器上快速搭建个人网站?
,怎么用自己头像做动态表情包?
javascript基本数据类型及类型检测常用方法小结
网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?
建站之星多图banner生成与模板自定义指南
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
临沂网站制作公司有哪些,临沂第四中学官网?
如何在景安云服务器上绑定域名并配置虚拟主机?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
如何在IIS7中新建站点?详细步骤解析
jQuery 常见小例汇总
外贸公司网站制作哪家好,maersk船公司官网?
微课制作网站有哪些,微课网怎么进?
零基础网站服务器架设实战:轻量应用与域名解析配置指南
网站制作软件有哪些,制图软件有哪些?
哈尔滨网站建设策划,哈尔滨电工证查询网站?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?
如何在IIS中配置站点IP、端口及主机头?
做企业网站制作流程,企业网站制作基本流程有哪些?
如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法
如何选择域名并搭建高效网站?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】
全景视频制作网站有哪些,全景图怎么做成网页?
赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?
建站主机选购指南与交易推荐:核心配置解析
如何在Golang中处理模块冲突_解决依赖版本不兼容问题
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
如何获取上海专业网站定制建站电话?
*请认真填写需求信息,我们会在24小时内与您取得联系。