js下拉菜单语言选项简单实现


Posted in Javascript onSeptember 23, 2013

js下拉菜单语言选项简单实现
旗子图片

(function($) { 
var jSelect = $(".jsSelect"); 
$(jSelect).find("li:first").hover(function(){ 
$(".s").css("background","url(images/68_60.png) 54px 0px no-repeat"); 
h=$(this).parent("ul").find("li").length; 
$(this).parent("ul").css("height",28*h) 
$(this).siblings("li:not(.s)").mouseenter(function(){ 
$(".s").css("background","url(images/68_60.png) 54px 0px no-repeat"); 
$(this).css("background","#428bca").css("color","#FFFFFF") 
}); 
$(this).siblings("li:not(.s)").mouseleave(function(){ 
$(this).css("background","none").css("color","#428bca") 
$(".s").css("background","url(images/68_60.png) 54px -30px no-repeat"); 
}); $(this).parent(jSelect).mouseleave(function(){ 
$(this).css("height",28) 
}); 
}); 
$(jSelect).find("li:not(.s)").click(function(){ 
var cContent=$(jSelect).find("li:first").html(); 
var cdContent = $(this).html(); 
$(jSelect).find("li:first").html(cdContent); 
$(this).html(cContent); 
$(this).find('a').removeClass('s'); 
$(this).find('a').removeAttr('style'); 
$(jSelect).find("li:first").addClass('s'); 
$(this).parent("ul").css("height",28); 
}); 
$(".s").css("background","url(images/68_60.png) 54px -30px no-repeat"); 
})(jQuery);

<ul id="language" class="jsSelect"><li><a href="#" class="s"><i class="flag-en-us"></i>English</a></li><li><a href="#"> <i class="flag-zh-cn"></i>简体中文</a></li><li><a href="#"><i class="flag-zh-tw"></i>繁体中文</a></li> 
</ul>

<link href="/public/css/flags.css" rel="stylesheet" type="text/css" /> 
<style> 
*{ 
margin:0px; 
padding: 0px; 
} 
body{ 
margin: 10px; 
} 
ul.jsSelect { 
width:121px; 
height: 28px; 
display:inline; 
margin-left:-2px; 
overflow:hidden; 
background:#FFF; 
float:left; 
border:1px solid #ccc; 
padding:0; 
} 
ul.jsSelect li { 
margin:0px; 
width:118px; 
height:28px; 
line-height:30px; 
font-size: 14px; 
font-weight: bold; 
cursor:pointer; 
padding:0px 3px; 
color:#ccc; 
border:none; 
list-style: none; 
} 
ul.jsSelect li a{ 
text-decoration: none; 
} 
ul.jsSelect .s { 
margin:0; 
display: block; 
margin-left: 0px; 
cursor: pointer; 
color: #666; 
border: none; 
background-image: url(images/68_60.png); 
background-repeat: no-repeat; 
background-position: 54px -30px; 
} 
</style>

flag.css
[class^="flag-"],[class*=" flag-"] {display: inline-block;margin-top:2px;width: 16px;height: 11px;line-height: 11px;vertical-align: text-top;background-image: url("http://file.aconf.org/public/images/icons/flags.png");background-repeat: no-repeat;*margin-right: .3em;margin-right: 0.3em} 
[class^="flag-"]:last-child,[class*=" flag-"]:last-child {*margin-left: 0 } 
.flag-ad{background-position:0 0} 
.flag-ae{background-position:0 -31px} 
.flag-af{background-position:0 -62px} 
.flag-ag{background-position:0 -93px} 
.flag-ai{background-position:0 -124px} 
.flag-al{background-position:0 -155px} 
.flag-am{background-position:0 -186px} 
.flag-an{background-position:0 -217px} 
.flag-ao{background-position:0 -248px} 
.flag-ar{background-position:0 -279px} 
.flag-as{background-position:0 -310px} 
.flag-at{background-position:0 -341px} 
.flag-au{background-position:0 -372px} 
.flag-aw{background-position:0 -403px} 
.flag-ax{background-position:0 -434px} 
.flag-az{background-position:0 -465px} 
.flag-ba{background-position:0 -496px} 
.flag-bb{background-position:0 -527px} 
.flag-bd{background-position:0 -558px} 
.flag-be{background-position:0 -589px} 
.flag-bf{background-position:0 -620px} 
.flag-bg{background-position:0 -651px} 
.flag-bh{background-position:0 -682px} 
.flag-bi{background-position:0 -713px} 
.flag-bj{background-position:0 -744px} 
.flag-bm{background-position:0 -775px} 
.flag-bn{background-position:0 -806px} 
.flag-bo{background-position:0 -837px} 
.flag-br{background-position:0 -868px} 
.flag-bs{background-position:0 -899px} 
.flag-bt{background-position:0 -930px} 
.flag-bv{background-position:0 -961px} 
.flag-bw{background-position:0 -992px} 
.flag-by{background-position:0 -1023px} 
.flag-bz{background-position:0 -1054px} 
.flag-ca{background-position:0 -1085px} 
.flag-catalonia{background-position:0 -1116px} 
.flag-cc{background-position:0 -1147px} 
.flag-cd{background-position:0 -1178px} 
.flag-cf{background-position:0 -1209px} 
.flag-cg{background-position:0 -1240px} 
.flag-ch{background-position:2px -1271px} 
.flag-ci{background-position:0 -1302px} 
.flag-ck{background-position:0 -1333px} 
.flag-cl{background-position:0 -1364px} 
.flag-cm{background-position:0 -1395px} 
.flag-zh-cn{background-position:0 -1426px} 
.flag-co{background-position:0 -1457px} 
.flag-cr{background-position:0 -1488px} 
.flag-cs{background-position:0 -1519px} 
.flag-cu{background-position:0 -1550px} 
.flag-cv{background-position:0 -1581px} 
.flag-cx{background-position:0 -1612px} 
.flag-cy{background-position:0 -1643px} 
.flag-cz{background-position:0 -1674px} 
.flag-de{background-position:0 -1705px} 
.flag-dj{background-position:0 -1736px} 
.flag-dk{background-position:0 -1767px} 
.flag-dm{background-position:0 -1798px} 
.flag-do{background-position:0 -1829px} 
.flag-dz{background-position:0 -1860px} 
.flag-ec{background-position:0 -1891px} 
.flag-ee{background-position:0 -1922px} 
.flag-eg{background-position:0 -1953px} 
.flag-eh{background-position:-36px 0} 
.flag-england{background-position:-36px -31px} 
.flag-er{background-position:-36px -62px} 
.flag-es{background-position:-36px -93px} 
.flag-et{background-position:-36px -124px} 
.flag-europeanunion{background-position:-36px -155px} 
.flag-fam{background-position:-36px -186px} 
.flag-fi{background-position:-36px -217px} 
.flag-fj{background-position:-36px -248px} 
.flag-fk{background-position:-36px -279px} 
.flag-fm{background-position:-36px -310px} 
.flag-fo{background-position:-36px -341px} 
.flag-fr{background-position:-36px -372px} 
.flag-ga{background-position:-36px -403px} 
.flag-gb{background-position:-36px -434px} 
.flag-gd{background-position:-36px -465px} 
.flag-ge{background-position:-36px -496px} 
.flag-gf{background-position:-36px -527px} 
.flag-gh{background-position:-36px -558px} 
.flag-gi{background-position:-36px -589px} 
.flag-gl{background-position:-36px -620px} 
.flag-gm{background-position:-36px -651px} 
.flag-gn{background-position:-36px -682px} 
.flag-gp{background-position:-36px -713px} 
.flag-gq{background-position:-36px -744px} 
.flag-gr{background-position:-36px -775px} 
.flag-gs{background-position:-36px -806px} 
.flag-gt{background-position:-36px -837px} 
.flag-gu{background-position:-36px -868px} 
.flag-gw{background-position:-36px -899px} 
.flag-gy{background-position:-36px -930px} 
.flag-hk{background-position:-36px -961px} 
.flag-hm{background-position:-36px -992px} 
.flag-hn{background-position:-36px -1023px} 
.flag-hr{background-position:-36px -1054px} 
.flag-ht{background-position:-36px -1085px} 
.flag-hu{background-position:-36px -1116px} 
.flag-id{background-position:-36px -1147px} 
.flag-ie{background-position:-36px -1178px} 
.flag-il{background-position:-36px -1209px} 
.flag-in{background-position:-36px -1240px} 
.flag-io{background-position:-36px -1271px} 
.flag-iq{background-position:-36px -1302px} 
.flag-ir{background-position:-36px -1333px} 
.flag-is{background-position:-36px -1364px} 
.flag-it{background-position:-36px -1395px} 
.flag-jm{background-position:-36px -1426px} 
.flag-jo{background-position:-36px -1457px} 
.flag-jp{background-position:-36px -1488px} 
.flag-ke{background-position:-36px -1519px} 
.flag-kg{background-position:-36px -1550px} 
.flag-kh{background-position:-36px -1581px} 
.flag-ki{background-position:-36px -1612px} 
.flag-km{background-position:-36px -1643px} 
.flag-kn{background-position:-36px -1674px} 
.flag-kp{background-position:-36px -1705px} 
.flag-kr{background-position:-36px -1736px} 
.flag-kw{background-position:-36px -1767px} 
.flag-ky{background-position:-36px -1798px} 
.flag-kz{background-position:-36px -1829px} 
.flag-la{background-position:-36px -1860px} 
.flag-lb{background-position:-36px -1891px} 
.flag-lc{background-position:-36px -1922px} 
.flag-li{background-position:-36px -1953px} 
.flag-lk{background-position:-72px 0} 
.flag-lr{background-position:-72px -31px} 
.flag-ls{background-position:-72px -62px} 
.flag-lt{background-position:-72px -93px} 
.flag-lu{background-position:-72px -124px} 
.flag-lv{background-position:-72px -155px} 
.flag-ly{background-position:-72px -186px} 
.flag-ma{background-position:-72px -217px} 
.flag-mc{background-position:-72px -248px} 
.flag-md{background-position:-72px -279px} 
.flag-me{background-position:-72px -310px} 
.flag-mg{background-position:-72px -342px} 
.flag-mh{background-position:-72px -373px} 
.flag-mk{background-position:-72px -404px} 
.flag-ml{background-position:-72px -435px} 
.flag-mm{background-position:-72px -466px} 
.flag-mn{background-position:-72px -497px} 
.flag-mo{background-position:-72px -528px} 
.flag-mp{background-position:-72px -559px} 
.flag-mq{background-position:-72px -590px} 
.flag-mr{background-position:-72px -621px} 
.flag-ms{background-position:-72px -652px} 
.flag-mt{background-position:-72px -683px} 
.flag-mu{background-position:-72px -714px} 
.flag-mv{background-position:-72px -745px} 
.flag-mw{background-position:-72px -776px} 
.flag-mx{background-position:-72px -807px} 
.flag-my{background-position:-72px -838px} 
.flag-mz{background-position:-72px -869px} 
.flag-na{background-position:-72px -900px} 
.flag-nc{background-position:-72px -931px} 
.flag-ne{background-position:-72px -962px} 
.flag-nf{background-position:-72px -993px} 
.flag-ng{background-position:-72px -1024px} 
.flag-ni{background-position:-72px -1055px} 
.flag-nl{background-position:-72px -1086px} 
.flag-no{background-position:-72px -1117px} 
.flag-np{background-position:-68px -1148px} 
.flag-nr{background-position:-72px -1179px} 
.flag-nu{background-position:-72px -1210px} 
.flag-nz{background-position:-72px -1241px} 
.flag-om{background-position:-72px -1272px} 
.flag-pa{background-position:-72px -1303px} 
.flag-pe{background-position:-72px -1334px} 
.flag-pf{background-position:-72px -1365px} 
.flag-pg{background-position:-72px -1396px} 
.flag-ph{background-position:-72px -1427px} 
.flag-pk{background-position:-72px -1458px} 
.flag-pl{background-position:-72px -1489px} 
.flag-pm{background-position:-72px -1520px} 
.flag-pn{background-position:-72px -1551px} 
.flag-pr{background-position:-72px -1582px} 
.flag-ps{background-position:-72px -1613px} 
.flag-pt{background-position:-72px -1644px} 
.flag-pw{background-position:-72px -1675px} 
.flag-py{background-position:-72px -1706px} 
.flag-qa{background-position:-72px -1737px} 
.flag-re{background-position:-72px -1768px} 
.flag-ro{background-position:-72px -1799px} 
.flag-rs{background-position:-72px -1830px} 
.flag-ru{background-position:-72px -1861px} 
.flag-rw{background-position:-72px -1892px} 
.flag-sa{background-position:-72px -1923px} 
.flag-sb{background-position:-72px -1954px} 
.flag-sc{background-position:-108px 0} 
.flag-scotland{background-position:-108px -31px} 
.flag-sd{background-position:-108px -62px} 
.flag-se{background-position:-108px -93px} 
.flag-sg{background-position:-108px -124px} 
.flag-sh{background-position:-108px -155px} 
.flag-si{background-position:-108px -186px} 
.flag-sj{background-position:-108px -217px} 
.flag-sk{background-position:-108px -248px} 
.flag-sl{background-position:-108px -279px} 
.flag-sm{background-position:-108px -310px} 
.flag-sn{background-position:-108px -341px} 
.flag-so{background-position:-108px -372px} 
.flag-sr{background-position:-108px -403px} 
.flag-st{background-position:-108px -434px} 
.flag-sv{background-position:-108px -465px} 
.flag-sy{background-position:-108px -496px} 
.flag-sz{background-position:-108px -527px} 
.flag-tc{background-position:-108px -558px} 
.flag-td{background-position:-108px -589px} 
.flag-tf{background-position:-108px -620px} 
.flag-tg{background-position:-108px -651px} 
.flag-th{background-position:-108px -682px} 
.flag-tj{background-position:-108px -713px} 
.flag-tk{background-position:-108px -744px} 
.flag-tl{background-position:-108px -775px} 
.flag-tm{background-position:-108px -806px} 
.flag-tn{background-position:-108px -837px} 
.flag-to{background-position:-108px -868px} 
.flag-tr{background-position:-108px -899px} 
.flag-tt{background-position:-108px -930px} 
.flag-tv{background-position:-108px -961px} 
.flag-zh-tw{background-position:-108px -992px} 
.flag-tz{background-position:-108px -1023px} 
.flag-ua{background-position:-108px -1054px} 
.flag-ug{background-position:-108px -1085px} 
.flag-um{background-position:-108px -1116px} 
.flag-en-us{background-position:-108px -1147px} 
.flag-uy{background-position:-108px -1178px} 
.flag-uz{background-position:-108px -1209px} 
.flag-va{background-position:-108px -1240px} 
.flag-vc{background-position:-108px -1271px} 
.flag-ve{background-position:-108px -1302px} 
.flag-vg{background-position:-108px -1333px} 
.flag-vi{background-position:-108px -1364px} 
.flag-vn{background-position:-108px -1395px} 
.flag-vu{background-position:-108px -1426px} 
.flag-wales{background-position:-108px -1457px} 
.flag-wf{background-position:-108px -1488px} 
.flag-ws{background-position:-108px -1519px} 
.flag-ye{background-position:-108px -1550px} 
.flag-yt{background-position:-108px -1581px} 
.flag-za{background-position:-108px -1612px} 
.flag-zm{background-position:-108px -1643px} 
.flag-zw{background-position:-108px -1674px}
Javascript 相关文章推荐
js操纵跨frame的三级联动select下拉选项实例介绍
May 19 Javascript
jQuery延迟加载图片插件Lazy Load使用指南
Mar 25 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
Dec 02 Javascript
JavaScript实现经典排序算法之插入排序
Dec 28 Javascript
基于JavaScript实现自定义滚动条
Jan 25 Javascript
简单实现AngularJS轮播图效果
Apr 10 Javascript
详解Angular2响应式表单
Jun 14 Javascript
js实现轮播图的两种方式(构造函数、面向对象)
Sep 30 Javascript
jQuery实现遍历XML节点和属性的方法示例
Apr 29 jQuery
vue实现移动端悬浮窗效果
Dec 01 Javascript
VUE 组件转换为微信小程序组件的方法
Nov 06 Javascript
JS实现省市县三级下拉联动
Apr 10 Javascript
js禁止页面刷新禁止用F5键刷新禁止右键的示例代码
Sep 23 #Javascript
读取input:file的路径并显示本地图片的方法
Sep 23 #Javascript
js/html光标定位的实现代码
Sep 23 #Javascript
JS加jquery简单实现标签元素的显示或隐藏
Sep 23 #Javascript
JQuery操作单选按钮以及复选按钮示例
Sep 23 #Javascript
通过AJAX的JS、JQuery两种方式解析XML示例介绍
Sep 23 #Javascript
js如何取消事件冒泡
Sep 23 #Javascript
You might like
PHP基础陷阱题(变量赋值)
2012/09/12 PHP
php过滤HTML标签、属性等正则表达式汇总
2014/09/22 PHP
jQuery+PHP实现的掷色子抽奖游戏实例
2015/01/04 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
js 图片轮播(5张图片)
2008/12/30 Javascript
javascript onkeydown,onkeyup,onkeypress,onclick,ondblclick
2009/02/04 Javascript
JavaScript的类型简单说明
2010/09/03 Javascript
jquery实现在页面加载的时自动为日期插件添加当前日期
2014/08/20 Javascript
EasyUI实现第二层弹出框的方法
2015/03/01 Javascript
使用npm发布Node.JS程序包教程
2015/03/02 Javascript
自动完成的搜索框javascript实现
2016/02/26 Javascript
JavaScript弹出对话框的三种方式
2016/03/23 Javascript
详解jQuery简单的表格应用
2016/12/16 Javascript
jQuery Validation Engine验证控件调用外部函数验证的方法
2017/01/18 Javascript
解决Vue-cli npm run build生产环境打包,本地不能打开的问题
2018/09/20 Javascript
详解适配器在JavaScript中的体现
2018/09/28 Javascript
vue组件从开发到发布的实现步骤
2018/11/11 Javascript
解决layui-open关闭自身窗口的问题
2019/09/10 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
2020/02/09 Javascript
Python多线程编程(三):threading.Thread类的重要函数和方法
2015/04/05 Python
Python中的支持向量机SVM的使用(附实例代码)
2019/06/26 Python
Django url,从一个页面调到另个页面的方法
2019/08/21 Python
python数据预处理 :数据抽样解析
2020/02/24 Python
python数字类型math库原理解析
2020/03/02 Python
解决Jupyter NoteBook输出的图表太小看不清问题
2020/04/16 Python
Jupyter Notebook的连接密码 token查询方式
2020/04/21 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
2020/06/29 Python
Python classmethod装饰器原理及用法解析
2020/10/17 Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
2021/02/02 Python
全球知名的珠宝首饰品牌:Kay Jewelers
2018/02/11 全球购物
广州足迹信息技术有限公司Java软件工程师试题
2014/02/15 面试题
会计学个人自荐信模板
2013/12/13 职场文书
医学生临床实习自我评价
2014/03/07 职场文书
毕业生如何写自荐信
2014/03/26 职场文书
三方合作协议书范本
2014/04/18 职场文书
关心下一代工作先进事迹
2014/08/15 职场文书