js实现仿Discuz文本框弹出层效果


Posted in Javascript onAugust 13, 2015

本文实例讲述了js实现仿Discuz文本框弹出层效果。分享给大家供大家参考。具体如下:

这是一个在经典论坛曾经热讨论的问题,记得在QQ邮箱里也有类似功能,Discuz7.0论坛里同样也有,当你的鼠标单击文本框的时候,会弹出一个包含文字、图片、表单无素的DIV层,里面的元素都可以进行操作,很方便,选中的值会自动添加到文本框内。本代码经过了多次修正,没有进行过多美化,你美工好的话可以自己美化。

运行效果截图如下:

js实现仿Discuz文本框弹出层效果

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>文本框弹出内容框并取值</title>
<Script language="javascript" type="text/javascript">
function moveselect(obj,target,all){
 if (!all) all=0
 if (obj!="[object]") obj=eval("document.all."+obj)
 target=eval("document.all."+target)
 if (all==0)
 {
 while (obj.selectedIndex>-1){
 mot=obj.options[obj.selectedIndex].text
 mov=obj.options[obj.selectedIndex].value
 obj.remove(obj.selectedIndex)
 var newoption=document.createElement("OPTION");
 newoption.text=mot
 newoption.value=mov
 target.add(newoption)
 }
 }
 else
 {
 for (i=0;i<obj.length;i++)
 {
 mot=obj.options[i].text
 mov=obj.options[i].value
 var newoption=document.createElement("OPTION");
 newoption.text=mot
 newoption.value=mov
 target.add(newoption)
 }
obj.options.length=0
 }
}
function dakai(){
document.getElementById('light').style.display='block';
document.getElementById('fade').style.display='block'
}
function guanbi(){
var yuanGong=document.getElementById("yuanGong")
yuanGong.value=""//如果不加这句,则每次选择的结果追加
var huoQu=document.getElementById("D2")
for(var k=0;k<huoQu.length;k++)
yuanGong.value=yuanGong.value + huoQu.options[k].value + " "//这里的" "中间为空格,为字符间的分隔符,你可以改成别的
document.getElementById('light').style.display='none';
document.getElementById('fade').style.display='none' 
}
</script>
<style>
.black_overlay{display: none;position: absolute;top: 0%;left: 0%;width: 100%;height: 100%;background-color:#FFFFFF;z-index:1001;-moz-opacity: 0.8;opacity:.80;filter: alpha(opacity=80);}
.white_content {display: none;position: absolute;top: 25%;left: 25%;width: 50%;height: 50%;padding: 16px;border: 16px solid orange; margin:-32px; background-color: white;z-index:1002;overflow: auto;}
</style>
</head>
<body>
<input type="text" id="yuanGong" onclick="dakai()" size="50">
<div id="light" class="white_content">
<table border="1" width="350" id="table4" bordercolor="#CCCCCC" bordercolordark="#CCCCCC" bordercolorlight="#FFFFFF" cellpadding="3" cellspacing="0">
  <tr>
  <td width="150" height="200" align="center" valign="middle">
   该部门员工
   <select size="12" name="D1" ondblclick="moveselect(this,'D2')" multiple="multiple" style="width:140px">
   <option value="员工1">员工1</option>
   <option value="员工2">员工2</option>
   <option value="员工3">员工3</option>
   </select>
  </td>
  <td width="50" height="200" align="center" valign="middle">
  <input type="button" value="<<" name="B3" onclick="moveselect('D2','D1',1)" /><br />
  <input type="button" value="<" name="B5" onclick="moveselect('D2','D1')" /><br />
  <input type="button" value=">" name="B6" onclick="moveselect('D1','D2')" /><br />
  <input type="button" value=">>" name="B4" onclick="moveselect('D1','D2',1)" /><br />
  </td>
  <td width="150" height="200" align="center" valign="middle">
  未划分部门员工
   <select size="12" name="D2" id="D2" ondblclick="moveselect(this,'D1')" multiple="multiple" style="width:140px">
   <option value="员工4">员工4</option>
   <option value="员工5">员工5</option>
   </select>
  </td>
  </tr>
</table>
<a href = "javascript:void(0)" onclick = "guanbi()">确定</a><BR><BR>
</div>
<div id="fade" class="black_overlay"></div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
excel操作之Add Data to a Spreadsheet Cell
Jun 12 Javascript
Ruffy javascript 学习笔记
Nov 30 Javascript
基于jQuery的树控件实现代码(asp.net+json)
Jul 11 Javascript
关于删除时的提示处理(确定删除吗)
Nov 03 Javascript
js使用正则实现ReplaceAll全部替换的方法
Jul 18 Javascript
一个jquery实现的不错的多行文字图片滚动效果
Sep 28 Javascript
JavaScript实现的一个计算数字步数的算法分享
Dec 06 Javascript
jQuery实现仿微软首页感应鼠标变化滑动窗口效果
Oct 08 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
Nov 29 Javascript
微信小程序开发之圆形菜单 仿建行圆形菜单实例
Dec 12 Javascript
简述pm2常用命令集合及配置文件说明
May 30 Javascript
Bootstrap简单实用的表单验证插件BootstrapValidator用法实例详解
Mar 29 Javascript
深入学习JavaScript中的原型prototype
Aug 13 #Javascript
javascript获取本机操作系统类型的方法
Aug 13 #Javascript
javascript中offset、client、scroll的属性总结
Aug 13 #Javascript
用JavaScript实现PHP的urlencode与urldecode函数
Aug 13 #Javascript
asp.net中oracle 存储过程(图文)
Aug 12 #Javascript
JavaScript的jQuery库插件的简要开发指南
Aug 12 #Javascript
JavaScript中的call方法和apply方法使用对比
Aug 12 #Javascript
You might like
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法
2015/12/17 PHP
采用CSS和JS,刚好我最近有个站点要用到下拉菜单!
2006/06/26 Javascript
js操作select控件的几种方法
2010/06/02 Javascript
JS事件在IE与FF中的区别详细解析
2013/11/20 Javascript
jquery.validate使用详解
2016/06/02 Javascript
javascript简易画板开发
2020/04/12 Javascript
在一个页面重复使用一个js函数的方法详解
2016/12/26 Javascript
Node.js中多进程模块Cluster的介绍与使用
2017/05/27 Javascript
VUE 配置vue-devtools调试工具及安装方法
2018/09/30 Javascript
Python中给List添加元素的4种方法分享
2014/11/28 Python
python web框架学习笔记
2016/05/03 Python
Python利用ElementTree模块处理XML的方法详解
2017/08/31 Python
TensorFlow平台下Python实现神经网络
2018/03/10 Python
Python对CSV、Excel、txt、dat文件的处理
2018/09/18 Python
Python爬虫设置代理IP(图文)
2018/12/23 Python
Python实现的爬取百度文库功能示例
2019/02/16 Python
Python读写文件模式和文件对象方法实例详解
2019/09/17 Python
PyQT5 emit 和 connect的用法详解
2019/12/13 Python
Python基于Tensor FLow的图像处理操作详解
2020/01/15 Python
浅谈Python中的异常和JSON读写数据的实现
2020/02/27 Python
Python requests模块cookie实例解析
2020/04/14 Python
python中watchdog文件监控与检测上传功能
2020/10/30 Python
Python 实现二叉查找树的示例代码
2020/12/21 Python
韩国三星旗下的一家超市连锁店:Home Plus
2016/07/30 全球购物
英国最专业的健身器材供应商之一:Best Gym Equipment
2017/12/22 全球购物
学前教育毕业生自荐信
2013/10/29 职场文书
电子商务毕业生求职信
2013/11/10 职场文书
学校运动会霸气口号
2014/06/07 职场文书
植树节标语
2014/06/27 职场文书
党委班子剖析材料
2014/08/21 职场文书
个人收入证明模板
2014/09/18 职场文书
反四风个人对照检查材料思想汇报
2014/09/25 职场文书
小兵张嘎电影观后感
2015/06/03 职场文书
python数据处理之Pandas类型转换
2022/04/28 Python
vue实现input输入模糊查询的三种方式
2022/08/14 Vue.js