基于jQuery实现仿51job城市选择功能实例代码


Posted in Javascript onMarch 02, 2016

前些文章用写过,省市县三级联动,但是感觉选择的时候不够直观,现在改进了下,效果如下图

基于jQuery实现仿51job城市选择功能实例代码

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="City.aspx.cs" Inherits="System_Select_City" %>
<!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">
<head id="Head1" runat="server">
<title></title>
<script type="text/javascript" src="../js/jquery-1.7.min.js" ></script> 
<style type="text/css">
#provinceDiv{ list-style:none;}
#provinceDiv li{ list-style:none; border-bottom:1px dotted #ccc; width:400px; height:20px;margin-bottom:3px;}
#provinceDiv li span{ display:block; width:60px; height:20px; float:left; line-height:20px; text-align:center; position:relative;}
#provinceDiv li span:hover{ background:#fb0;}
#provinceDiv li span.current{ background:#fb0;}
div.cityDiv{ border:1px solid #ccc; width:auto; width:100px;_width:100px; height:100px;_height:100px;height:auto; background:#eff7ff; display:none; position:absolute; padding:2px;}
div.cityDiv a{ display:block; text-decoration:none; color:#000;}
div.cityDiv a:hover{ background:#fb0;}
</style>
<script type="text/javascript">
$(function () {
var isoncityDiv = false; //是否在cityDiv上,默认为false
$("span").bind("click", function () {
var spanid = $(this).attr("id"); //获取当前spanid
$("span").not("#" + spanid).removeClass("current");
$(this).addClass("current");
$("div.cityDiv").remove(); //立即移除所有动态创建的div
var spanCurrent = $("#" + $(this).attr("id")); //当前点击的sapn对象
var tipDiv = $("<div id='city_" + $(this).attr("id") + "' class='cityDiv'></div>"); //动态创建城市div
tipDiv.html(System_Select_City.GetCity(spanid).value);//后台输出的数据包含城市数据
tipDiv.bind("mouseover", function () {
tipDiv.show();
isoncityDiv = true; //鼠标在其上为true
}).bind("mouseout", function () {
tipDiv.hide();
});
$("body").append(tipDiv); //加入body 
var top = spanCurrent.offset().top; //获取top
var left = spanCurrent.offset().left; //获取left
tipDiv.offset({ top: top + 20, left: left + 60 });
tipDiv.show(); //获取显示div 
}).bind("mouseout", function () {
var spanCurrent = $("#city_" + $(this).attr("id"));
var a = function () {
if (!isoncityDiv) { //不在 弹出的div上时候 执行
spanCurrent.remove();
}
clearTimeout(int);
};
var int = setTimeout(a, 3000);
});
});
//关闭谈出口
function show(title) {
parent.closeDiv(title);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<ul id="provinceDiv">
<li> <a>直辖市</a></li>
<li>
<span id="11">北京</span>
<span id="31">上海</span>
<span id="50">重庆</span>
<span id="12">天津</span>
</li>
<li><a>省区</a></li>
<li>
<span id="13">河北</span>
<span id="14">山西</span> 
<span id="15">内蒙古</span>
<span id="21">辽宁</span>
<span id="22">吉林</span>
<span id="23">黑龙江</span> 
</li>
<li> 
<span id="32">江苏</span>
<span id="33">浙江</span>
<span id="34">安徽</span>
<span id="35">福建</span>
<span id="36">江西</span>
<span id="37">山东</span> 
</li>
<li>
<span id="41">河南</span>
<span id="42">湖北</span>
<span id="43">湖南</span>
<span id="44">广东</span>
<span id="45">广西</span>
<span id="46">海南</span>
</li>
<li> 
<span id="51">四川</span>
<span id="52">贵州</span>
<span id="53">云南</span>
<span id="54">西藏</span>
<span id="61">陕西</span>
<span id="62">甘肃</span>
</li> 
<li> 
<span id="63">青海</span>
<span id="64">宁夏</span>
<span id="65">新疆</span>
<span id="71">台湾</span>
<span id="81">香港</span>
<span id="91">澳门</span>
</li> 
</ul>
</div> 
</form>
</body>
</html>

以上内容给大家介绍了基于jQuery实现仿51job城市选择功能实例代码,希望对大家有所帮助!

Javascript 相关文章推荐
javascript 对表格的行和列都能加亮显示
Dec 26 Javascript
JS 显示当前日期与时间的代码
Mar 24 Javascript
JS控制表单提交的方法
Jul 09 Javascript
jQuery Validation PlugIn的使用方法详解
Dec 18 Javascript
微信小程序 UI布局常用技巧整理总结
Dec 05 Javascript
原生js实现对Ajax的封装(仿jquery)
Jan 22 Javascript
深入理解Javascript中的观察者模式
Feb 20 Javascript
php输出全部gb2312编码内的汉字方法
Mar 04 Javascript
vue select选择框数据变化监听方法
Aug 24 Javascript
bootstrap与pagehelper实现分页效果
Dec 29 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
Sep 27 Javascript
JavaScript数组去重实现方法小结
Jan 17 Javascript
基于JavaScript实现类似于百度学术高级检索功能
Mar 02 #Javascript
js密码强度实时检测代码
Mar 02 #Javascript
js+css实现回到顶部按钮(back to top)
Mar 02 #Javascript
Node.js中JavaScript操作MySQL的常用方法整理
Mar 01 #Javascript
通过node-mysql搭建Windows+Node.js+MySQL环境的教程
Mar 01 #Javascript
jquery自定义右键菜单、全选、不连续选择
Mar 01 #Javascript
Node.js的MongoDB驱动Mongoose基本使用教程
Mar 01 #Javascript
You might like
php-perl哈希算法实现(times33哈希算法)
2013/12/30 PHP
php实现可用于mysql,mssql,pg数据库操作类
2014/12/13 PHP
PHP模板引擎smarty详细介绍
2015/05/26 PHP
ThinkPHP中html:list标签用法分析
2016/01/09 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
为何说PHP引用是个坑,要慎用
2018/04/02 PHP
使用PHPUnit进行单元测试并生成代码覆盖率报告的方法
2019/03/08 PHP
php+js实现的拖动滑块验证码验证表单操作示例【附源码下载】
2020/05/27 PHP
跨浏览器的设置innerHTML方法
2006/09/18 Javascript
Nodejs+express+html5 实现拖拽上传
2014/08/08 NodeJs
JavaScript生成的动态下雨背景效果实现方法
2015/02/25 Javascript
jQuery实现切换字体大小的方法
2015/03/10 Javascript
什么是JavaScript中的结果值?
2016/10/08 Javascript
AngularJS 文件上传控件 ng-file-upload详解
2017/01/13 Javascript
jQuery查找dom的几种方法效率详解
2017/05/17 jQuery
不使用 JS 匿名函数理由
2017/11/17 Javascript
VUE重点问题总结
2018/03/19 Javascript
vue监听对象及对象属性问题
2018/08/20 Javascript
node实现生成带参数的小程序二维码并保存到本地功能示例
2018/12/05 Javascript
浅谈一个webpack构建速度优化误区
2019/06/24 Javascript
Python抓取京东图书评论数据
2014/08/31 Python
Python的Django框架中模板碎片缓存简介
2015/07/24 Python
python爬虫_自动获取seebug的poc实例
2017/08/05 Python
python3 图片referer防盗链的实现方法
2018/03/12 Python
python实现随机调用一个浏览器打开网页
2018/04/21 Python
python数字图像处理之骨架提取与分水岭算法
2018/04/27 Python
python pycharm的安装及其使用
2019/10/11 Python
图解python全局变量与局部变量相关知识
2019/11/02 Python
Draper James官网:知名演员瑞茜·威瑟斯彭所创品牌
2017/10/25 全球购物
C和C++经典笔试题附答案解析
2014/08/18 面试题
北大研究生linux应用求职信
2013/10/29 职场文书
《学会合作》教学反思
2014/04/12 职场文书
交警正风肃纪剖析材料
2014/10/29 职场文书
群众路线教育实践活动总结
2014/10/30 职场文书
2016暑期校本培训心得体会
2016/01/08 职场文书
九大龙王魂骨,山龙王留下躯干骨,榜首死的最憋屈(被捏碎)
2022/03/18 国漫