javascript模拟select实现代码

最近迷茫于javascript的闭包与继承,写一个小东西找找感觉。

JS+CSS模拟Select下拉框,选择表单效果

网页中使用Select语法实现的下拉框是很普遍的,但是您有没有见过使用JS+CSS模拟的Select下拉框?并且可以选择表单哦,尽管代码复杂了点,但是对于我们了解此类特效非常有帮助。

DIV+CSS+JS仿下拉表单

function $$$$$(_sId){
return document.getElementById(_sId);
}
function hide(_sId)
{$$$$$(_sId).style.display = $$$$$(_sId).style.display == "none" ? "" : "none";}
function pick(v) {
document.getElementById('am').value=v;
hide('HMF-1')
}
function bgcolor(id){
document.getElementById(id).style.background="#F7FFFA";
document.getElementById(id).style.color="#000";
}
function nocolor(id){
document.getElementById(id).style.background="";
document.getElementById(id).style.color="#788F72";
}

* {
margin:0px;
padding:0px;
}
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}
.cur {
cursor:pointer;
display:block;
color:#788F72;
width:71px;
height:22px;
line-height:22px;
padding:0px 0px 0px 2px;
}
.am {
border: 0px;
color:#788F72;
cursor: pointer;
background: url(/uploads/allimg/1111/icon_111.jpg) no-repeat center center;
border:1px #ccc solid;
display:block;
cursor:pointer;
width:73px;
height: 19px;
margin:10px 0px 0px 10px;
padding:3px 0px 0px 2px;
}
.bm {
border: 1px #999999 solid;
width:73px;
margin-left:10px;
}

测试一 测试二 测试三 测试四 测试五 测试六

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

这个作品在没有任何需求下完成,不保证能应用于实际应用,仅用于自娱自乐。

浏览器默认样式

select1select2select3select4

js模拟select,样式主要参照IE8与Firefox。

  • select1

    select2

    select3

    select4

在不改变HTML结构的前提下,可更改其它样式。建议用IE8与FF浏览,可与默认样式进行对比。

//

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

用js模拟实现表单select选择的功能

用js模拟实现表单select选择的功能

.t_search {width:900px; margin:auto;}
.t_s_item {width:100px; float:left;}
/* s_select start */
.select_box {cursor:default; text-align:left;}
.select_value {border:1px solid; filter:alpha(opacity:0); visibility:hidden; overflow-x:hidden; overflow:auto; position:absolute;}
.select_record0 {padding-left:4px; background:#fff; width:100%; color:#000; height:20px; line-height:20px;}
.select_record1 {padding-left:4px; background:#ccc; width:100%; color:#000; height:20px; line-height:20px;}
/* s_select end */

/* s_search start */
var sortname;
var age;
var addr;
var keywords;
var dropShow=false;
var currentID;
function dropdown(el){
if(dropShow){
dropFadeOut();
}else{
currentID=document.getElementById(el);
currentID.style.visibility="visible";
dropFadeIn();
}
}
function dropFadeIn(){//选单淡入的效果
if(currentID.filters.alpha.opacity0){
clearTimeout(fadeTimer);
currentID.filters.alpha.opacity-=20;
fadeTimer=setTimeout("dropFadeOut()",50);
}else{
dropShow=false;
currentID.style.visibility="hidden";
}
}
function dropdownHide(){
if(dropShow){
dropFadeOut();
dropShow=false;
}
}
function hiLight(el){//高亮度显示指标位置
if(dropShow){
for(i=0;i= 0){tempTxt=el.innerText.replace("┝","");}
document.getElementById("text").innerText=tempTxt.substring(0,tempTxt.indexOf("|"));
tempstr=tempTxt.substring(tempTxt.indexOf("|")+1);
}
function CheckMe1(el){//替换显示内容
document.getElementById("text1").innerText=el.innerText;
sortname=el.innerText;
}
function CheckMe2(el){//替换显示内容
document.getElementById("text2").innerText=el.innerText;
age=el.innerText;
}
function CheckMe3(el){//替换显示内容
document.getElementById("text3").innerText=el.innerText;
addr=el.innerText;
}
document.onclick=dropdownHide;
function go_search(){
keywords=document.getElementById("form_search").keywords.value;
if(!sortname){sortname="";}
if(!age){age="";}
if(!addr){addr="";}
if(keywords=="请输入你要找的信息!"){keywords="";}
location.href="userlist.php?sortname="+sortname+"&age="+age+"&addr="+addr+"&keywords="+keywords;
}
/* s_search end */

选择类别

类别1

类别2

类别3

年龄

18-25岁

26-32岁

所在地

上海

浙江

福建

广东

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

在不改变HTML结构的前提下,可更改其它样式。建议用IE8与FF浏览,可与默认样式进行对比。

发布一来是为了记录自己学习过程,二来想请朋友指点一下迷津,哪些地方欠妥或者有更好的思路可以给我指点一下,谢谢。

(0)

相关推荐

  • javascript模拟select,jselect的方法实现

    由于主流浏览器对select元素渲染不同,所以在每种浏览器下显示也不一样,最主要的是默认情况下UI太粗糙,即使通过css加以美化也不能达到很美观的效果.这对于我们这些专注于UX的前端开发人员是无法容忍的.于是在项目不太忙的时候,就计划写一个模拟的select控件出来.接下来就把实现的细节.遇到的问题以及如何使用和大家分享一下. 1. 实现细节 init: function(context) { //获取指定上下文所有select元素 var elems = squid.getElementsBy

  • javascript对select标签的控制(option选项/select)

    html中的select标签,也是asp.net中的asp:DropDownList控件. javascript对它们的操作 一.基础理解 复制代码 代码如下: var e = document.getElementById("selectId"); e. options= new Option("文本","值") ; //创建一个option对象,即在<select>标签中创建一个或多个<option value="

  • JavaScript通过select动态更换图片的方法

    本文实例讲述了JavaScript通过select动态更换图片的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码在select列表变化时触发SetBeerIcon()函数,SetBeerIcon()函数可以根据select选择的值动态修改图片 ... <script language="JavaScript" type="text/javascript" > function setBeerIcon() { var beerIcon = doc

  • javascript实现无限级select联动菜单

    代码很简单,这里主要是给大家推荐一下本代码的实现思路,别具一格. 奉上代码: 复制代码 代码如下: <!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"&g

  • javascript对下拉列表框(select)的操作实例讲解

    这篇文章,主要是关于javascript和select相关的最基本方法,以供不熟悉javascript的人参考.常见的情况是,提出表单结构的人, 不仅仅需要为程序设计逻辑,创建数据结构,还需要设计表单的样式,以及熟悉javascript:某些公司可能会要求您精通photoshop:最初的时候,我们都是全才. 下面是我们例子的基础:这不是一个标准的表单. <form id="f"> <select size="1" name="s"

  • javascript获取select值的方法分析

    本文实例讲述了javascript获取select值的方法.分享给大家供大家参考.具体分析如下: 1. 获取显示的汉字 复制代码 代码如下: document.getElementById("bigclass").options[window.document.getElementById("bigclass").selectedIndex].text 2. 获取数据库中的id 复制代码 代码如下: window.document.getElementById(&q

  • javascript 操作select下拉列表框的一点小经验

    按照我一贯的web开发风格,所有不直接操作数据库的事件,都尽可能由javascript来实现,所以这个需求我打算使用js来完成. 首先来分析一下具体情况:这个页面是一个更新页面,品牌有品牌1和品牌2两个字段,品牌2可以为空,品牌1不能为空,所以品牌2的下拉列表框比品牌1多一项:如果选择了品牌的前8相中的任意一项,"活跃状态"要隐藏,否则"活跃状态"默认显示状态为"潜在":当查询的结果品牌1和品牌2有任意一项在品牌的前8相中,"活跃状态&

  • javascript操作select元素实例分析

    本文实例讲述了javascript操作select元素的用法.分享给大家供大家参考.具体分析如下: 这里熟悉一下js对select元素的操作,html页面中建立一个form,其中包含一个select元素和submit按钮. 当选择select中某一项时改变其文字,当select中所有项的文字都改变后,重新恢复它们. 当按下submit时关闭窗口本身,代码如下: <!DOCTYPE html> <html> <head> <title>duang for se

  • JavaScript关于select的相关操作说明

    一. 插入option 1.DOM方法 var oSelectYear = document.getElementById("SelectYear"); var op = document.createElement("option"); op.innerHTML = "2010"; op.value = "2010"; oSelectYear.appendChild(op); 2.new Option方法 var oSele

  • javascript模拟select实现代码

    最近迷茫于javascript的闭包与继承,写一个小东西找找感觉. JS+CSS模拟Select下拉框,选择表单效果 网页中使用Select语法实现的下拉框是很普遍的,但是您有没有见过使用JS+CSS模拟的Select下拉框?并且可以选择表单哦,尽管代码复杂了点,但是对于我们了解此类特效非常有帮助. DIV+CSS+JS仿下拉表单 function $$$$$(_sId){ return document.getElementById(_sId); } function hide(_sId) {

  • javascript 模拟select下拉列表特效

    javascript 模拟select下拉列表特效 by jb51.net function gets_id(objName){ if(document.getElementById){ return eval('document.getElementById("' + objName + '")'); }else if(document.layers){ return eval("document.layers['" + objName +"']&quo

  • 模拟select的代码

    几年前不知道在哪下载的源码上改的,去年开始学jquery,就改了一下,代码有点乱.只是自己用,没有考虑写成通用的组件,所以童鞋们如果真的要拿去用的话有点麻烦 几个状态,展开收起是jquery的slide这个模拟select,只是很简单的实现了单独一个select的部分功能没有实现比如optgroup,文字长度自适应(图片会因此修改麻烦)再说如果页面多个select,css处理也麻烦,数据.联动都要增加大量代码 小有小的好处,所以就不考虑进行封装,这里有不少童鞋做的比我好很多,功能很强大 再所以,

  • javascript模拟地球旋转效果代码实例

    复制代码 代码如下: <!DOCTYPE html><html><head><title>JS模拟地球旋转-柯乐义</title></head><body><div><h2>JS模拟地球旋转·柯乐义</h2></div><div id="keleyi_com" style="width:300px;height:300px;"&g

  • javascript操作select参考代码

    1.判断select选项中 是否存在Value="paraValue"的Item         function jsSelectIsExitItem(objSelect, objItemValue) {             var isExit = false;             for (var i = 0; i < objSelect.options.length; i++) {                 if (objSelect.options[i].

  • javascript模拟滚动条实现代码

    其实这样代码产生些了冗余.......不如单独写个Slider类 做为第一个版本还是保存起来 有时间的话 试着单独的写个Slider类 #container { height:200px;_height:198px;width:385px;border:1px solid #CCCCCC; } #container #content{ height:200px;width:370px;float:left;overflow:hidden; } #container #content div{ m

  • 用javascript实现select的美化的方法

    论坛经常有人会问到用CSS如何美化Select标签,其实但凡你看到很酷的都是用javascript来实现的.昨天试着做了一下,基本实现的初级功能.拿出来和大家一起分享一下.先可以看一下预览效果:http://www.iwcn.net/demo/select. [功能需求] 1.调用要方便,做好之后应该像这样: 复制代码 代码如下: function loadSelect(selectobj){  //传入一个select对象就能将他的样式美化  } 2.不改变原有表单项,表单的页面代码不去破坏:

  • javascript自定义滚动条实现代码

    在工作中经常会遇到内容会超出固定的一个范围,超出的内容一般会使用到滚动条来滚动显示. 但是用浏览器默认的滚动条经常被产品经理鄙视,可是用css却改变不了滚动条的样式,还好,有万能的js ^_^~~ 网上有各种各样的插件,但最顺手的还是自己写的,还可以一边撸一边当学习,自己动手丰衣足食 (*^__^*) 其中这三个问题深深地困扰我: 1.滚动条高度 2.每次点击向上.向下按钮的时候滚动条应该移动多少距离 3.每拖动1px滚动条,页面需要移动多少? 整个的框架大概是长这样的: 先来看看第一个问题.

  • js模拟select下拉菜单控件的代码

    复制代码 代码如下: <!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-1.7.2.min.js"></script> <meta charset=utf-8 /> <title>js模拟select</title> </head>    <style>   *{ marg

随机推荐