第49篇一对多实现(六)学生进入只显示一个头像及删除学生id及删除学生div及 array_merge
2017-02-20 16:46
441 查看
关键词:一对多实现,
学生进入只显示一个头像,
删除学生id及删除学生div, array_merge
一、一对多实现
1.1 运行平台
老师端:https://123.57.206.36:9100/demos/index.html?roomid=888
学生一:
https://123.57.206.36:9100/demos/student.html?studentId=1001&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1479740395ZMJkiF.jpg#888
学生二:
https://123.57.206.36:9100/demos/student.html?studentId=1002&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1480494624FDjMGetutor.png#888
学生三:
https://123.57.206.36:9100/demos/student.html?studentId=1003&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1480475198N2F0kntutor.png#888
1.2 UI图
![](https://oscdn.geek-share.com/Uploads/Images/Content/201702/52c24b137b409b00f97fa2f672860388)
1.3 控制头像显示一次(小目标一)
代码如下:
if($.inArray(studentId, studentIdArray)>-1){
return;
}else{
//动态追加学生头像
$("#studentIdSet").append(" <div><imgsrc="+userAvatar+" width='30px';height='30px'></div>");
//把学生id追加到数组中,供下次判断
studentIdArray.push(studentId);
}
注:如果到来的学生id在数组中,$.inArray(studentId,studentIdArray)返回0,就直接退出不追加;如果来的学生id不在数组中,$.inArray(studentId, studentIdArray)返回-1,就在原来的div中追加一个小div,并把这个学生id追加到数组studentIdArray中。接下来,研究学生断线时,要把头像从div中删除,并且studentId从数组studentIdArray中删除。现在运行效果如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201702/198c96b36c4e8d206c2c7a04decdca64)
1.4 删除学生id及删除学生div(小目标二)
已经实现,代码如下:
//断线重连时,清空学生头像div
$('#studentIdSet').empty();
//断线重连时,清空学生id数组
studentIdArray.splice(0,studentIdArray.length);
注:思路是,学生断线时,第一步清空放学生头像的div,$('#studentIdSet').empty();
接着,清空之前追加形成的学生id数组studentIdArray,
studentIdArray.splice(0,studentIdArray.length);因为一个学生掉线,所有学生都会重连一次,这样的话,会重新走appendDiv,重新把头像追加一次,就不用判断哪个学生掉线了。当然,这样是有问题的,比方说一个老师正在和张三对话,李四掉线了,张三也会重连一次,这个放到后期解决。
二、php
2.1PHP array_merge() 函数
1)定义和用法
array_merge() 函数用于把一个或多个数组合并为一个数组。
提示:您可以向函数输入一个或者多个数组。
注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。
注释:如果您仅仅向 array_merge() 函数输入一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引(参见下面的实例 1)。
提示:该函数与 array_merge_recursive() 函数之间的不同是在处理两个或更多个数组元素有相同的键名的情况。array_merge_recursive() 不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。
2)语法
array_merge(array1,array2,array3...)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201702/db54bbc3246a2290b55d447deebb128b)
3)看个例子
![](https://oscdn.geek-share.com/Uploads/Images/Content/201702/93cea5509328119fe3d65183dc3cd753)
注:是两个数组,合并为一个数组,键名顺延。
4)例子二如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201702/581fa68b1c1d48222ccca9f6054a7ae1)
注:如果是单一数组,会对键名进行从0开始,重新赋值,这个非常有用,在做word时,常对数组进行重新定义,键名是跳跃的。
2017年2月18日星期六
学生进入只显示一个头像,
删除学生id及删除学生div, array_merge
一、一对多实现
1.1 运行平台
老师端:https://123.57.206.36:9100/demos/index.html?roomid=888
学生一:
https://123.57.206.36:9100/demos/student.html?studentId=1001&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1479740395ZMJkiF.jpg#888
学生二:
https://123.57.206.36:9100/demos/student.html?studentId=1002&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1480494624FDjMGetutor.png#888
学生三:
https://123.57.206.36:9100/demos/student.html?studentId=1003&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1480475198N2F0kntutor.png#888
1.2 UI图
1.3 控制头像显示一次(小目标一)
代码如下:
if($.inArray(studentId, studentIdArray)>-1){
return;
}else{
//动态追加学生头像
$("#studentIdSet").append(" <div><imgsrc="+userAvatar+" width='30px';height='30px'></div>");
//把学生id追加到数组中,供下次判断
studentIdArray.push(studentId);
}
注:如果到来的学生id在数组中,$.inArray(studentId,studentIdArray)返回0,就直接退出不追加;如果来的学生id不在数组中,$.inArray(studentId, studentIdArray)返回-1,就在原来的div中追加一个小div,并把这个学生id追加到数组studentIdArray中。接下来,研究学生断线时,要把头像从div中删除,并且studentId从数组studentIdArray中删除。现在运行效果如下:
1.4 删除学生id及删除学生div(小目标二)
已经实现,代码如下:
//断线重连时,清空学生头像div
$('#studentIdSet').empty();
//断线重连时,清空学生id数组
studentIdArray.splice(0,studentIdArray.length);
注:思路是,学生断线时,第一步清空放学生头像的div,$('#studentIdSet').empty();
接着,清空之前追加形成的学生id数组studentIdArray,
studentIdArray.splice(0,studentIdArray.length);因为一个学生掉线,所有学生都会重连一次,这样的话,会重新走appendDiv,重新把头像追加一次,就不用判断哪个学生掉线了。当然,这样是有问题的,比方说一个老师正在和张三对话,李四掉线了,张三也会重连一次,这个放到后期解决。
二、php
2.1PHP array_merge() 函数
1)定义和用法
array_merge() 函数用于把一个或多个数组合并为一个数组。
提示:您可以向函数输入一个或者多个数组。
注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。
注释:如果您仅仅向 array_merge() 函数输入一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引(参见下面的实例 1)。
提示:该函数与 array_merge_recursive() 函数之间的不同是在处理两个或更多个数组元素有相同的键名的情况。array_merge_recursive() 不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。
2)语法
array_merge(array1,array2,array3...)
3)看个例子
注:是两个数组,合并为一个数组,键名顺延。
4)例子二如下:
注:如果是单一数组,会对键名进行从0开始,重新赋值,这个非常有用,在做word时,常对数组进行重新定义,键名是跳跃的。
2017年2月18日星期六
相关文章推荐
- 创建一个学生系统,实现一下功能; * 1:增加学生 * 2:显示学生 * 3:修改学生 * 4:删除学生 * 5:查找学生 * 6:退出程序 * 请输入选择(
- 设计一个学生成绩管理系统,实现对学生成绩的动态管理,实现对学生成绩的输入,显示,删除,查找,插入,最佳,保存,计算,排序等主要功能
- 利用模板类编写一个程序,实现双向链表的插入、删除、查找、显示的功能。
- div不管有没有name属性,只要设置id和name为同一个值即可实现getElementsByName功能
- 问题:关于坛友的一个定时重复显示和隐藏div的实现
- c语言使用链表编写一个可以实现班级学生管理系统,增加,删除,修改学生信息
- 实现鼠标放到一个div上显示出另一个隐藏的div
- 多个DIV,显示一个,隐藏其他全部的实现方法
- 一个图片轮换显示的实现,使用DIV+JS,支持Firefox,IE,Safiri
- (一个代码学会c语言操作数据库)linux上通过c语言操作数据库实现基本的学生信息管理系统(增、删、查、改‘显示)
- 一个表中的Id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数,用SQL语句及视图、存储过程分别实现。
- Joomla!中如何使用switcher.js实现一个位置上div层的切换显示 【转】
- 使用jquery实现点击一个按钮或连接,让它下面的div显示,在点击一下隐藏
- 一个页面实现修改删除列表显示,ajax动态生成table(使用ajax,springmvc,jsp)
- F:在datagrid中 怎么实现 点击一行(多列)传一个id过去到第二页显示其具体内容,不用按钮、链接等?
- 用scrollTop实现让一个div始终显示在页面的某个地方
- 笔试题:创建一个单链表,结点包含学生的学号,姓名,性别,年龄信息.写几个程序,实现按学生学号插入,查询,删除等操作.
- 打造一个在线通信录,实现在线通讯录的显示、添加、删除
- 用c语言实现 一个通讯录(实现 增加、删除、查找、修改、显示、清空功能)
- GridView长按改变布局,实现长按某一个,所有项都显示删除的图标