首页 > 教程 > 关键词  > 正文

用javascript实现select的美化

2007-05-04 02:04 · 稿源:蓝色理想

作者的bloghttps://www.iwcn.net

论坛经常有人会问到用CSS如何美化Select标签,其实但凡你看到很酷的都是用javascript来实现的。昨天试着做了一下,基本实现的初级功能。拿出来和大家一起分享一下。
先可以看一下: 预览效果

功能需求

1、调用要方便,做好之后应该像这样:

function loadSelect(selectobj){
//传入一个select对象就能将他的样式美化
}

2、不改变原有表单项,表单的页面代码不去破坏:

<form name="f" onsubmit="getResult();">
<fieldset>
<legend>用户注册</legend>
<div>
<label for="username">帐号</label>
<input type="text" id="username" name="username" />
</div>
<div>
<label for="pwd">密码</label>
<input type="password" name="pwd" id="pwd" />
</div>
<div>
<label for="province">省份</label>
<select id="province" name="province">
<option value="10">江西</option>
<option value="11">福建</option>
<option value="12">广东</option>
<option value="13">浙江</option>
</select>
</div>
</fieldset>
<input type="submit" value="提交" name="btnSub" />
</form>

实现思路

  • 第一步:将表单中的select隐藏起来。
    为什么?很简单,因为这家伙太顽固了,用css根本搞不出来你想要的。所以把它杀掉。
  • 第二步:用脚本找到select标签在网页上的绝对位置。
    我们在那个位置上用DIV标签做个假的、好看点的来当他的替身。
  • 第三步:用脚本把select标签中的值读出来。
    虽然藏起来了,但它里边的options我们还有用呢,统统取过来。
  • 第四步:当用户点击select标签的替身,也就是div的时候。我们再用一个div浮在上一个div的下边,这个就是options的替身了。

大致上就是这样了,接下来我们一步一步去实现它!

准备工作

  • 1、想好你要把select美化成什么样子,并准备好相应的图片。我准备了两张小图,就是下拉箭头1和下拉箭头2,1是默认样式,2是鼠标移过来的样式。
  • 2、写好一个普通的表单递交页面,比如下边这个。注意我给select定义了基本的CSS样式、在头部添加了调用js文件的代码、在body中添加了调用函数的脚本。

代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="Content-Language" content="zh-CN" />
<title>用javascript美化Select</title>
<script type="text/javascript" src="/articleimg/2007/04/4687/select.js"></script>
<style type="text/css">
select{width:200px;height:20px;}
</style>
</head>
<body>
<h1>用javascript模拟select达到美化效果</h1>
<form name="f" onsubmit="getResult();">
<fieldset>
<legend>用户注册</legend>
<div>
<label for="username">帐号</label>
<input type="text" id="username" name="username" />
</div>
<div>
<label for="pwd">密码</label>
<input type="password" name="pwd" id="pwd" />
</div>
<div>
<label for="province">省份</label>
<select id="province" name="province">
<option value="10">江西</option>
<option value="11">福建</option>
<option value="12">广东</option>
<option value="13">浙江</option>
</select>
</div>
</fieldset>
<input type="submit" value="提交" name="btnSub" />
</form>
<script type="text/javascript">
loadSelect(document.f.province);
</script>
<p>
<a href="https://www.iwcn.net">作者博客</a>
</p>
</body>
</html>

举报

  • 相关推荐
  • 从管理工具向“增长伙伴”蜕变 Agent重构CRM价值体系

    销售易在腾讯云城市峰会上发布中国首款AI+CRM产品NeoAgent,标志着CRM系统从流程化工具向智能化伙伴转型。该产品通过智能录入、场景赋能和自然交互三大功能,实现从被动执行到主动辅助的跨越。NeoAgent依托语音识别、对话解析等技术,能自动提取客户需求等关键信息并结构化存储,大幅降低操作成本。同时打破传统CRM菜单层级限制,通过语音或文字指令快速获取数据,响应速度提升80%以上。产品深度整合企业销售方法论与客户数据,为具体场景提供精准建议,并通过"湖仓一体"数据平台确保信息实时更新。其每月迭代机制紧密依赖业务场景,已成功应用于客户画像、渠道管理等场景,形成"试用-反馈-迭代-转化"闭环。

  • 52TOYS携潮流IP矩阵亮相美国SDCC漫展 自有IP备受玩家追捧

    2025年7月24-27日,中国潮玩品牌52TOYS携旗下Pouka Pouka、CiCi Lu等原创IP系列亮相全球顶级动漫展圣地亚哥国际动漫展(SDCC),展位人气火爆。同期还参展了东京Wonder Festival夏季展。这是52TOYS首次在海外集中展示自有IP矩阵,其复古毛绒设计等产品获得跨文化消费者的喜爱。自2018年首次参展以来,52TOYS海外业务快速增长,2024年国际收入达1.47亿元,复合增长率超100%。目前品牌已在美国开设首家门店,通过多元场景触达全球消费者,持续推动中国潮玩文化出海。

  • RestCloud荣登Gartner 《2025 中国 ICT 技术成熟度曲线》,唯一入选的iPaaS供应商!

    Gartner发布《2025年中国ICT技术成熟度曲线》报告,谷云科技RestCloud作为唯一入选的独立iPaaS厂商上榜API管理领域。报告指出API管理平台能解决企业数字化转型中的数据孤岛问题,通过统一管理API全生命周期,实现跨系统数据实时同步与业务协同。RestCloud平台具备四大核心价值:1)消除数据孤岛,实现全域集成;2)提升开发效率与API复用率;3)保障安全稳定运行;4)结合AI驱动智能化业务创新。该入选标志着国产iPaaS技术已达国际前沿水平,正成为企业数字化转型的核心引擎。

  • Cactus Custody 与 Bybit 达成战略合作,提升加密安全系数

    7月23日,Matrixport旗下合规数字资产托管商Cactus Custody宣布与Bybit达成战略合作,其场外结算系统Cactus Oasis将于7月28日正式接入Bybit平台。该系统专为机构客户设计,融合资产安全托管与高效结算功能,用户无需预充值交易所账户,只需将抵押资产存入托管账户即可交易。合作将提升加密投资者的交易体验,降低交易对手风险。Cactus Custody持有香港信托公司牌照,采用冷热钱包分层架构和银行级存储设施,并通过SOC1/2审计认证,确保资产安全合规。双方表示此次合作将加速机构资金入场,推动加密行业机构化进程。

  • Checkout.com携手Visa推出发卡业务 (Card Issuing)

    Checkout.com与Visa达成战略合作,在英国及欧洲地区推出全方位发卡业务。通过Visa全球支付网络,商户可即时获取收款资金用于支付供应商款项,显著提升资金使用效率。该合作特别针对旅游业企业,解决其支付流程分散、资金周转慢的痛点。Checkout.com每年处理数千亿交易的技术能力与Visa网络结合,帮助商户消除预存资金需求,优化现金流管理。双方表示这将大幅提升欧洲商户运营效率,释放增长潜力。

  • 七牛云上线Agent和MCP托管服务

    七牛云AI大模型推理平台推出Agent与MCP托管服务,通过标准化接口实现LLM与多工具协同。MCP协议统一了应用程序与云端服务调用方式,LLM+MCP成为AI Agent生态核心。平台提供一站式模型推理和工具调用服务,支持复杂Agent应用开发,具备三大优势:1)统一接入管理多种工具和模型;2)集中托管敏感密钥确保安全;3)简化本地环境配置。开发者可通过Token API直接调用托管MCP工具,或使用SSE协议接入外部工具。典型应用场景包括:聚合多工具调用、灵活编排服务、安全密钥管理等。该服务显著降低AI应用开发门槛,加速智能化应用构建。

  • 终结“油车不智能”时代!联手奥迪,A5L Sportback首搭华为乾崑智驾

    8月1日,上汽奥迪A5L Sportback正式上市,成为全球首款搭载华为乾崑智驾技术的燃油车。该车融合德系机械底蕴与中国智能科技,配备32个高性能传感器和华为ADS 2.0系统,实现高速、城区、泊车全场景智能驾驶。动力方面搭载第五代EA888发动机(200kW)和quattro四驱系统,百公里加速5.6秒。设计上延续奥迪经典溜背造型,提供六款配置车型,售价25.99万元起。华为乾崑智驾系统已累计辅助驾驶35.41亿公里,泊车辅助超2.3亿次,用户人均辅助驾驶里程达524公里。此次合作标志着传统豪华品牌与智能科技的深度融合,为燃油车智能化发展开辟新路径。

  • Matrixport CEO John 出席 Foresight 2024 年度峰会,表示Matrixport将持续拥抱合规,提供专业资管服务

    Matrixport CEO John Ge在"Foresight2024"峰会上表示,合规化是加密行业主旋律。他指出当前加密市场缺乏新流量入场,资产管理趋向主流资产集中化,BTC、ETH等占比很高。随着加密ETF通过,合规属性增强,跨圈资管开始复苏。Matrixport将持续拥抱合规,为更多用户提供专业资管服务,帮助用户获取理性收益。公司成立于2019年,是亚洲最大的一站式加密金融服务平台,致力于构建�

  • 智能手表初代传奇落幕!苹果宣布Apple Watch Series 1将不再提供维修服务

    苹果公司近日宣布,Apple Watch Series 1正式走入历史,不再提供维修服务。 根据苹果的维修政策,产品停售后超过5年但未满7年会被归类为过时产品”,维修需视零件供应情况而定;停售后超过7年则为停产产品”,全面终止所有维修支持。 此次Apple Watch Series 1被降级为停产产品”,意味着未来官方将不再受理其维修服务。 值得注意的是,Apple Watch Series 1并非初代Apple Watch,而是

  • AI日报:GPT-5-Auto现身Mac客户端;阿里开源WebAgent项目WebShaper;腾讯推X-Omni多模态模型

    【AI日报】今日AI领域重要动态:1)阿里开源WebAgent项目WebShaper,GAIA评测超越Claude4-Sonnet;2)Moonvalley推出草图转视频功能,支持手绘生成电影级视频;3)腾讯X-Omni模型实现图文理解重大突破;4)百度搜索测试AI应用中心入口;5)Midjourney+新增个性化推荐功能;6)GPT-5或于2025年夏季发布;7)Ollama推出桌面客户端;8)OWL团队开源多智能体协作工具Eigent;9)OpenAI年收入激增至120亿美元;10)英伟达H20芯片因安全风险被约谈;11)万兴科技天幕2.0模型国内排名第四,与华为云共建AI视频实验室。