JQuery 初探
放暑假了,终于有时间能学点前端的东西了。JQuery就是我第一个选择,锋利的JQuery。这本书真的很好。下面以一个ToggleButton形式的小例子开场吧。
引入JQuery库
在网页上引用JQuery并不是一件难事,我们通常来说有两种方式。
引用本地文件:将下载好的JQuery当做src即可,如下
<script type="text/javascript" src="jquery-2.2.4.min.js"></script>
注意:JQuery库的引用要放到javascript代码的前面,这样才能保证脚本的正确执行。所以不妨放到
head标签里面吧。以CDN 的方式引用:说白了,就是一个网址链接。推荐一个网址JQuery CDN 大全.具体的使用可以如下:
<script src="//cdn.bootcss.com/jquery/3.1.0/jquery.min.js"></script>
| 优缺点对比 | 采用本地JS | 采用CDN方式 |
|---|---|---|
| 页面加载速度 | 快 | 稍慢(取决于当时的网速) |
| 简易程度 | 略繁琐(尤其是目录较深的时候) | 简单方便,一个网址即可 |
Toggle 使用原理
在一个网页中要想获得toggle的效果,我们可以通过对其的visible属性进行判断,由此实现不同的业务逻辑。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Toggle Button Demo</title>
<script type="text/javascript" src="jquery-2.2.4.min.js"></script>
</head>
<body>
<h1 id="togglebtn">I am the title!</h1>
<span>Toggle</span>
<script>
var $title = $("#togglebtn");
var $togglebutton = $("span");
$togglebutton.click(function(){
if($title.is(":visible")){
$togglebutton.text("Toggle Button Open!");
$title.hide();
}else{
$title.show();
$togglebutton.text("Toggle Button Close!");
}
})
</script>
</body>
</html>
网页效果:
I am the title!
Toggle
点击toggle,就可以观察到不同的现实情况了。
复杂点的toggle使用
这里分享一个书中的小例子,关于商城产品列表的展开与关闭。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>列表项展开与关闭的效果</title>
<script type="text/javascript" src="jquery-2.2.4.min.js"></script>
<!-- 使用CDN的方式加载会比较的慢,所以尽量采用本地js文件加载-->
<!-- <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script> -->
</head>
<body>
<div class="SubCategoryBox">
<ul>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">尼康</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">佳能</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
<li>
<a href="#">列表项*</a>
</li>
</ul>
</div>
<div class="showmore">
<a href="listoperation.html">
<span>显示全部品牌</span>
</a>
</div>
<script type="text/javascript">
// 等待DOM加载完毕
$(function(){
// 获取索引值大于5的品牌集合对象,出最后一条外
var $category = $('ul li:gt(5):not(:last)');
// 隐藏上面获取到的JQuery对象
$category.hide();
// 获取“显示全部品牌”按钮
var $toggleBtn = $('div.showmore > a');
// 给按钮添加点击事件
$toggleBtn.click(function(){
// 如果元素显示,则启用第一个逻辑
if($category.is(":visible")){
$category.hide();
$('.showmore a span').css("background","green").text("显示全部品牌");
$('ul li').removeClass("promoted");
// 如果元素不显示,则启用第二个逻辑
}else{
$category.show();
$('.showmore a span').css("background","red").text("精简显示品牌");
$('ul li').filter(":contains('佳能'),:contains('尼康')").addClass("promoted");
}
// 为了让超链接不跳转,所以返回false即可
return false;
})
})
</script>
</body>
</html>
代码中脚本注释写的很清楚了,里面使用到了JQuery的多种选择器,以及过滤器的使用,是一个很实用的小技巧了。
实现的逻辑很朴素,就是对于刚接触JQuery的童鞋而言概念,名词会有点多。多练习,熟悉之后就好了。
JQuery 初探的更多相关文章
- jQuery初探 jQuery选取和操纵元素的特点
jQuery初探 jQuery选取和操纵元素的特点 JavaScript选取元素 先来看看不用jQuery的时候我们是怎么处理元素选取的. JavaScript选取元素的时候,可以根据id获取元素,当 ...
- JQuery初探
[TOC] jquery 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行"操作"(actions). jQuery 使用的语法是 XPath 与 CSS ...
- 第二章:jQuery初探
一.引入jQuery XXXX.js文件 <script>标签 1.版本选择 当前jQuery有两个分支 1.x 支持ie6.7.8 jquery-1.11.2.js:未经过压缩,适合同学 ...
- [Web 前端] 026 jQuery 初探
目录 1. jQuery 简介 2. jQuery 的简单操作 2.1 jQuery 选择器 2.1.1 简介 2.1.2 基础选择器 2.2 过滤获取 2.3 父子关系获取 3. jQuery 元素 ...
- jQuery入门、jQuery选择器、jQuery操作
一.什么是jQuery及如何使用 1.1 jQuery 简介 jQuery是一个兼容多浏览器的javascript函数库(把我们常用的一些功能进行了封装,方便我们来调用,提高我们的开发效率.),核心理 ...
- 初探jquery.slimscroll.js和iscroll5.js
网上关于实现各种滚动效果的插件不胜枚举,这里,我简单介绍一下自己用过的两款比较有代表性的插件: 1.jquery.slimscroll.js,需要先引入jquery类库,主要用于模拟传统的浏览器滚动条 ...
- 【初探移动前端开发05】jQuery Mobile (整合版)
前言 为了方便大家看的方便,我这里将这几天的东西整合一下发出. 里面的例子请使用手机浏览器查看. 什么是jQuery Mobile? jquery mobile是jquery在移动设备上的版本,他是基 ...
- 【初探移动前端开发05】jQuery Mobile (下)
前言 继续我们移动端的学习,今天到了List相关了. 本文例子请使用手机查看 List列表 在移动设备平台下,由于移动设备屏幕比较小,我们又是用手在上面点击的触屏方式,传统的列表模式在手机上就不太友好 ...
- 【初探移动前端开发04】jQuery Mobile (中)
前言 昨天我们一起学习了一部分jquery mobile的知识,今天我们继续. 这些是些很基础的东西,有朋友觉得这个没有其它的好,但是学习下不吃亏嘛,我反正也不会一起学习基础啦. 例子请使用手机查看哦 ...
随机推荐
- Mysql之触发器的操作:
触发器的操作: 1.触发器的创建: (1).创建包含一条语句的触发器 create trigger trigger_name before|after trigger_event on table_n ...
- [FJOI2014]最短路径树问题
Description 给一个包含n个点,m条边的无向连通图.从顶点1出发,往其余所有点分别走一次并返回. 往某一个点走时,选择总长度最短的路径走.若有多条长度最短的路径,则选择经过的顶点序列字典序最 ...
- [SDOI2005]反素数
题目描述 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4. 如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数.例如,整数1,2,4,6 ...
- WISCO信息组NOIP模拟赛-部落冲突
传送门 首先肯定考虑树剖,这里没有要求区间加,所以可以用树状数组维护,不会卡常的 这里是边权,可以转化为点权:让每条边连接的较深的节点的点权等于边权即可,然后计算的时候减去lca #include&l ...
- 【20170920校内模拟赛】小Z爱学习
所有题目开启-O2优化,开大栈空间,评测机效率为4亿左右. T1 小 Z 学数学(math) Description 要说小 Z 最不擅长的学科,那一定就是数学了.这不,他最近正在学习加法运算.老 ...
- bzoj4830 hnoi2017 抛硬币
题目描述 小 A 和小 B 是一对好朋友,他们经常一起愉快的玩耍.最近小 B 沉迷于**师手游,天天刷本,根本无心搞学习.但是已经入坑了几个月,却一次都没有抽到 SSR,让他非常怀疑人生.勤勉的小 A ...
- bzoj1096[ZJOI2007]仓库建设 斜率优化dp
1096: [ZJOI2007]仓库建设 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 5482 Solved: 2448[Submit][Stat ...
- SpringCloud学习之SpringCloudBus
一.spring-cloud-bus是什么? 回答这个问题之前,我们先回顾先前的分布式配置,当配置中心发生变化后,我们需要利用spring-boot-actuator里的refresh端点进行手动刷新 ...
- Python中模块之os的功能介绍
Python中模块之os的功能介绍 1. os的变量 path 模块路径 方法:os.path 返回值:module 例如:print(os.path) >>> <module ...
- 了解ASCII、gb系列、Unicode、UTF-8的区别
转自:http://www.douban.com/note/334994123/?type=rec ● 为什么有这么多编码? ● UTF-8和GB2312有什么区别? ● 我们在国内做网站是用UTF- ...