自己编写的仿京东移动端的省市联动选择JQuery插件
概述
什么是插件,插件就是即插即用叫插件,很少的配置,很少的代码就可以用都项目里,之所以做这个插件,是因为做了一个省市区的联动,其他项目如果要用怎么办,难道在ctrl+c,ctrl+v?那样做太low,做个插件吧,于是乎就开始了Jquery插件制作之旅。
使用效果
获取使用
代码开源,已经托管在git上,地址如下,希望大家赏脸给个星
https://gitee.com/jangojing/JqueryCitySelectPlug
1.引入js、css和移动端的meta
引入jquery版本无所谓,demo里的版本较老,就懒得换了,其次引入插件对应的js和css
加入移动端的meta是移动端开发的前提
- <script src="Scripts/jquery-1.4.1.min.js"></script>
- <script src="Scripts/CitySelect/citySelectPlug.js"></script>
- <link rel="stylesheet" href="Scripts/CitySelect/citySelectPlug.css" type="text/css" />
<meta name="viewport" content="initial-scale=1, width=device-width, maximum-scale=1, user-scalable=no" />
2.编辑html绑定jquery事件
html里放入一个input,用jquery绑定一个jquery事件
- <form action="submit.aspx" method="GET">
- 请选择省市区:<br />
- <input type="text" name="citySelect" value="" id="citySelect" />
- <input type="submit" value="提交" />
- </form>
- <script>
- $().ready(function () {
- $("#citySelect").citySelectPlug({ ajaxUrl: 'GetArea.ashx' });
- });
- </script>
3. 处理ajax请求
注意到这里有个ajaxUrl,这个是配置你项目的ajax请求的路径的。既然要做联动,肯定需要ajax请求,通过当前选择的id去找下一级的id。
ajax请求会调用对应的地址,携带id为参数,id就是用户点击的那个省的id或者市的id,根据这个id继续找下一级
这里ajax请求需要返回的结果是json格式的数据如下所示:
- [{"ID":606,"Name":"市辖区"},{"ID":123,"Name":"高淳区"},{"ID":234,"Name":"鼓楼区"}]
包含id和name的数组。
4. 完了?
就这样就完了? 是的,插件就是少量的配置,少量的代码,即插即用。
5. 兼容性申明
手边的设备不全,测试过的设备有iphone 6s,iphone 5s,华为P8,华为荣耀3台,一款很老的HTC,努比亚一台。
针对ios处理了输入框获得焦点自动居中的问题。
针对华为手机处理了键盘打开状态下触发屏幕可见范围高度不够导致弹出层高度只有半幅页面的问题。
自己编写的仿京东移动端的省市联动选择JQuery插件的更多相关文章
- React-Native牛刀小试仿京东砍啊砍砍到你手软
React-Native牛刀小试仿京东砍啊砍砍到你手软 React-Native基础教程 *React-Native基础篇作者git *React-Native官方文档 *Demo 几个月前faceb ...
- div css仿京东订单流程图样式代码
效果展示 http://hovertree.com/texiao/css/25/ 本效果适合PC,也适合移动端 手机扫描二维码查看效果: 效果图: 代码如下: <!DOCTYPE html> ...
- 浅谈android中只使用一个TextView实现高仿京东,淘宝各种倒计时
今天给大家带来的是只使用一个TextView实现一个高仿京东.淘宝.唯品会等各种电商APP的活动倒计时.近期公司一直加班也没来得及时间去整理,今天难得歇息想把这个分享给大家.只求共同学习,以及自己兴许 ...
- 纯Swift编写的仿“随遇”应用源码
纯Swift编写的仿“随遇”App概述 此项目是为了巩固Swift掌握而编写的,素材均来自“随遇”官方App 用Storyboard+Xib+Autolayout的方式来实现UI部分 由于项目不复杂, ...
- js 鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层异步加载模式
js用处:在做商城时,首页图片太多,严重影响首页打开速度,所以我们需要用到异步加载楼层.js名称:鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层模式js解释:1.用于商城的楼层内容异步加载,滚动条 ...
- jQuery仿京东无限级菜单HoverTree
官方网址:http://keleyi.com/jq/hovertree/ 效果图: 看了上面效果图,你或许已经明白为什么是仿京东菜单.如果还不明白,请访问http://list.jd.com/list ...
- iOS仿京东分类菜单之UICollectionView内容
在上<iOS仿京东分类菜单实例实现>已经实现了大部分主体的功能,本文是针对右边集合列表进行修改扩展,使它达到分组的效果,本文涉及到的主要是UICollectionView的知识内容,左边列 ...
- 完美高仿精仿京东商城手机客户端android版源码
完美高仿精仿京东商城手机客户端android版源码,是从安卓教程网那边转载过来的,这款应用源码非常不错的,也是一个非常优秀的应用源码的,希望能够帮到学习的朋友. _js_op> <igno ...
- 商城项目实战 | 1.1 Android 仿京东商城底部布局的选择效果 —— Selector 选择器的实现
前言 本文为菜鸟窝作者刘婷的连载."商城项目实战"系列来聊聊仿"京东淘宝的购物商城"如何实现. 京东商城的底部布局的选择效果看上去很复杂,其实很简单,这主要是要 ...
随机推荐
- CRC检验
CRC(循环冗余检验码) 基本原理:在K位信息码后面加上R位校验形成N位编码(即CRC码),事先需要约定一个生成多项式G(x),校验码生成过程:将K位信息码向左移动R位然后mol(其实就是按位异或)上 ...
- js 生成 UUID
在项目中遇到要生成 UUID 的需求,第一反应就是有没有原生的生成方法,找了找,发现没有,只能自己建立算法 function. 下面是我用的算法 function uuid(len, radix) { ...
- struts 中的addFieldError
addFieldError("字段名","错误信息")给一个字段(属性)添加错误消息 在action中添加 this.addFieldError("p ...
- struts2 添加请求后缀的3种方式
第一种方式在struts.xml文件中添加 <constant name="struts.action.extension" value="">&l ...
- CURL处理POST、GET请求
Curl是一个库,它允许你通过各种协议和各种不同的服务器进行连接和通讯 a.php <?php function curlRequest($url,$data=''){ $ch=curl_ini ...
- 小白成长系列--HTTP协议(一)
序:小白成长系列是笔者使用最简单易懂的逻辑来解释常见的计算机相关知识,不仅理解,还让你记忆深刻\(^o^)/ 先理解什么是协议? 协议就是双方要做某件事情而制定的规则,而且双方必须要遵从协议所约定的内 ...
- jmeter用Firefox录制https协议证书问题解决
录制脚本的时候,比如录制https协议的百度网站 https://www.baidu.com ,所有录制设置均正常,但是在jmeter录制控制器里面就是没有任何录制的请求. 这个时候提示说证书不对 1 ...
- SQL作业二
目的:通过加载chinook_db文件来把数据导入到sqllite,根据题目的要求进行查询 1.sql语句的基本语法 2.join多表查询的用法 3.group by分组的用法 4.order by排 ...
- 三栏布局,div左右盒子是定宽,中间是自适应
用弹性布局flex: 给父盒子加个display:flex; 给中间盒子设flex=1; /* 弹性盒子布局*/ .wrap{ width: 100%; height: 90px; display: ...
- getHibernateTemplate() VS getSession()
如题所示,对于这个问题,官网文档已给出答案,详见: /** * Obtain a Hibernate Session, either from the current transaction or * ...