Jquery實現(xiàn)仿京東商城省市聯(lián)動菜單
更新時間:2015年11月19日 14:08:36 投稿:lijiao
這篇文章主要介紹了Jquery實現(xiàn)仿京東商城省市聯(lián)動菜單的簡單實例演示,可以選擇對應省、市、縣,希望大家可以喜歡。
本文實例講述了Jquery實現(xiàn)仿京東商城省市聯(lián)動菜單的簡單實例代碼。分享給大家供大家參考。具體如下:
運行效果截圖如下:

具體代碼如下:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="assets/css/bootstrap.min.css">
<link rel="stylesheet" href="css/custom-theme/jquery-ui-1.10.0.custom.css">
<style>
.region li{
float: left;
width: 15%;
list-style: none;
line-height: 30px;
padding: 2px 15px;
white-space: nowrap;
}
.region li a{
text-decoration:none;
font-size:14px;
}
.region li a:hover{
background-color: #5bb75b;
}
</style>
</head>
<body>
<input type="text" id="address" class="address">
<div id="addressInfo" style="display: none;position: absolute;background-color: ffffff;border: 1px solid #aaaaaa;width:400px;">
<div class="selectAddress area">
<ul>
<li><a href="#tabs-1">省份</a></li>
</ul>
<div id="tabs-1" class="region">
<ul>
</ul>
</div>
</div>
</div>
<script src="assets/js/jquery-1.9.0.min.js"></script>
<script src="assets/js/jquery-ui-1.10.0.custom.min.js"></script>
<script>
$(function(){
var provinces = ['北京', '天津', '山東', '河南', '河北', '山西', '湖北', '湖南', '江西', '浙江', '上海', '安徽', '廣東', '廣西', '福建', '寧夏', '重慶', '四川', '西藏', '海南', '香港', '澳門', '內(nèi)蒙古', '陜西', '甘肅', '黑龍江', '遼寧', '吉林'];
var city = ['廣州', '深圳', '東莞'];
var county = ['寶安', '南山', '福田', '羅湖'];
$('.address').bind('focus', function(){
var $this = $(this);
$('#addressInfo').css({
top: $this.offset().top + $this.outerHeight(),
left : $this.offset().left
}).show();
});
var $provinces_li = $('.region>ul');
$.each(provinces, function(e){
$provinces_li.append('<li><a href="javascript:void(0);" class="provinces">'+this+'</a></li>');
});
var i = 0;
$('.area')
.tabs()
.on('click', '.provinces', function(){
//獲取當前對象
var $this = $(this),
$tabs = $this.parents('.selectAddress'), //追加DIV
$div = $('<div id="tabs-2"></div>'),
$ul = $('<ul></ul>'); //追加ul
$tabs.children(':eq(0)').children(':gt(0)').remove();
$tabs.children('div:gt(0)').remove();
//each遍歷,賦值
//最好是這樣,code、name $ul.append('<li><a href="javascript:void(0);" class="city">'+this.name+'</a><input type="hidden" value="'+this.code+'"/></li>');
$.each(city, function(){
$ul.append('<li><a href="javascript:void(0);" class="city">'+this+'</a></li>');
});
$tabs.children('ul').append('<li><a href="#tabs-2">市區(qū)</a></li>');
$tabs.append($div.addClass('region').append($ul));
$tabs
.tabs( "refresh" )
.tabs('option', 'active', 1)
.data('address', $this.text());
})
.on('click', '.city', function(){
var $this = $(this),
$tabs = $this.parents('.selectAddress'),
$div = $('<div id="tabs-3"></div>'),
$ul = $('<ul></ul>');
$tabs.children('ul').children(':eq(2)').remove();
$tabs.children('div:eq(2)').remove();
i++;
if(i == 1){ //判斷是否有下級
$.each(county, function(){
$ul.append('<li><a href="javascript:void(0);" class="county">'+this+'</a></li>');
});
$tabs.children('ul').append('<li><a href="#tabs-3">縣區(qū)</a></li>');
$tabs.append($div.addClass('region').append($ul));
$tabs
.tabs( "refresh" )
.tabs('option', 'active', 2)
.data('address', $tabs.data('address')+'/'+$this.text());
}else{
//獲取值并賦值至文本框中
$('.address').val($tabs.data('address')+'/'+$this.text());
$tabs.parent().hide();
}
})
.on('click', '.county', function(){
var $this = $(this),
$tabs = $this.parents('.selectAddress');
$('.address').val($tabs.data('address')+'/'+$this.text());
$tabs.parent().hide();
})
;
$(document).bind('click', function(e){
var $target = $(e.target),
addressInfo = $('#addressInfo');
if(!$target.hasClass('selectAddress')
&& $target.parents('.selectAddress').size() == 0
&& !$target.is($('.address'))
&& addressInfo.is(':visible')){
$('#addressInfo').hide();
}
});
})
</script>
</body>
</html>
源碼下載: 《Jquery實現(xiàn)仿京東商城省市聯(lián)動菜單》
希望本文所述對大家學習javascript程序設計有所幫助。
相關文章
capacityFixed 基于jquery的類似于新浪微博新消息提示的定位框
公司項目需求中有一個類似于新浪微博新消息提示的定位框的效果,需要的朋友可以參考下。2011-05-05
jQuery實現(xiàn)中獎播報功能(讓文本滾動起來) 簡單設置數(shù)值即可
這篇文章主要介紹了jQuery實現(xiàn)中獎播報功能(讓文本滾動起來) 簡單設置數(shù)值即可,文中通過實例代碼給大家詳細介紹,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03
jQuery使用zTree插件實現(xiàn)樹形菜單和異步加載
這篇文章主要介紹了jQuery使用zTree插件實現(xiàn)樹形菜單和異步加載的相關方法,感興趣的小伙伴們可以參考一下2016-02-02
jquery請求servlet實現(xiàn)ajax異步請求的示例
下面小編就為大家?guī)硪黄猨query請求servlet實現(xiàn)ajax異步請求的示例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06

