相思资源网 Design By www.200059.com
本文实例讲述了js实现select下拉框菜单的详细代码。分享给大家供大家参考。具体如下:
运行效果截图如下:
具体代码如下:
<!DOCTYPE html>
<html> <head> <title></title> <style type="text/css"> #gridComboBox { background: #fff; border: 1px solid #2d78f4; border-radius: 2px; -moz-box-shadow: inset 0 0 4px #06c; -webkit-box-shadow: inset 0 0 4px #06c; box-shadow: inset 0 0 4px #06c; } </style> </head> <body> <input onclick="doClick(this,'ddd(aa/bb/cc/erererer/dfdfdfdfdfdfdfdfdfdfdfdfdf/ejjejrjerjer//erererer ////////)eee')" /> <input onclick="doClick(this,'ddd(aa/bb/cc/erererer/dfdfdfdfdfdfdfdfdfdfdfdfdf/ejjejrjerjer//erererer ////////)eee')" style='width: 300px;' /> <p><b>Needed Properties:</b> sender.offsetTop & sender.offsetLeft & sender.offsetHeight</p> </body> </html> <script type="text/javascript"> function delGridComboBox() { // 删除弹出框 var divContainer = document.getElementById('gridComboBox'); if (divContainer) { divContainer.parentNode.removeChild(divContainer); } } function doClick(sender, str) {//str='ddd(aa/bb/cc/erererer/dfdfdfdfdfdfdfdfdfdfdfdfdf/ejjejrjerjer//erererer ////////)eee' 只取()得内容/分割做为数据源 delGridComboBox(); // console.log(sender); // for(var i in sender) // { // console.log(i+"|"+sender[i]); // } var re = /[^\)\(]*/g //取出()中的内容作为下拉数据源 var fit = str.match(re); var fmt = fit[2].split('/'); var divContainer = document.createElement('div'); divContainer.style.width = sender.clientWidth + 2 + "px"; divContainer.style.overflow = "hidden"; divContainer.style.position = 'absolute'; divContainer.style.top = sender.offsetTop + sender.offsetHeight + 'px'; divContainer.style.left = sender.offsetLeft + 'px'; divContainer.style.zIndex = 999; divContainer.id = "gridComboBox"; for (var i = 0; i < fmt.length; i++) { console.log('fmt[i]', fmt[i]); var txt = document.createElement('div'); txt.innerHTML = fmt[i]; txt.title = txt.innerHTML; txt.style.margin = 3+'px'; txt.addEventListener('mouseover', function changeBg(event) { event.target.style.fontWeight = 'bold'; event.target.style.color = 'white'; event.target.style.backgroundColor = '#2d78f4'; }, false); txt.addEventListener('mouseout', function unChangeBg(event) { event.target.style.fontWeight = 'normal'; event.target.style.color = 'black'; event.target.style.backgroundColor = 'white'; }, false); txt.onclick = function(subSender) { sender.value = subSender.target.innerText; delGridComboBox(); }; divContainer.appendChild(txt); }; document.body.appendChild(divContainer); }; </script>
如果大家还想深入学习,可以点击jquery下拉框效果汇总、JavaScript下拉框效果汇总进行学习。
以上就是js实现select下拉框菜单的代码,希望本文所述对大家学习javascript程序设计有所帮助。
标签:
js,select,下拉框
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无js实现select下拉框菜单的评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。