前端(十七)—— jQuery基础:jQuery的基本使用、JQ功能概括、JS对象与JQ对象转换、Ajax简单应用、轮播图
jQuery的基本使用、JQ功能概括、JS对象与JQ对象转换、Ajax简单应用、轮播图
一、认识jQuery
1、什么是jQuery
- jQuery是对原生JavaScript二次封装的工具函数集合
- jQuery是一个简洁高效的且功能丰富的JavaScript工具库
2、jQuery的优势
- 完全开源的源代码
- 强大简洁的选择器
- 事件、样式、动画的良好支持
- 链式表达式
- 简化的Ajax操作
- 跨浏览器兼容
- 丰富的插件及对外的扩展接口
二、jQuery的安装
1、版本
- 开发(development)版本:jQuery-x.x.x.js
- 生产(production)版本:jQuery-x.x.x.min.js
2、安装jQuery-3.3.1
官网下载(将jQuery下载到本地,使用时将其连接进即可)
<script src="js/jquery-3.3.1.js"></script>
<script src="js/jquery-3.3.1.min.js"></script>
<script>
// user code
</script>
CDN(一旦CDN的地址改变,就要及时更新地址,因此不推荐)
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
// user code
</script>
三、jQuery基本使用
1、JQuery对象
包含jq所有功能和悟性的对象,可以自定义对象名字
- jQuery
- $
- jQuery.noConflict()
2、页面加载
<img src="http://onehdwallpaper.com/wp-content/uploads/2015/11/Most-Beautiful-Girl-in-Flowers-Field.jpg"/>
<script>
window.onload = function() {
console.log("window load 1");
};
// 页面DOM数及文本标签资源完全加载完毕才能回调
window.onload = function() {
console.log("window load 2");
};
// DOM数加载完毕就回调
$(document).ready(function() {
console.log("document load 1");
});
// $(function(){}) 是 $(document).ready(function() {} 的简写
$(function() {
console.log("document load 3");
});
</script>
总结:
1. window.onload=fn只能绑定一个事件,页面DOM树与资源完全加载完毕
2. $(document).ready(fn)可以绑定多个事件,页面DOM树加载完毕,简写$(fn)
3、jQuery变量命名规范
- 通常以$开头
四、功能概括
1、选择器
// 满足CSS语法: . | # | *
var $ele = $('.ele');
2、文本操作
$ele.text("添加文本");
$ele.html('文本内容')
3、样式操作
$ele.css({width: '200px', heigth: '200px'});
// background-color 不加引号,会报非法字符,因此用 - 连接的属性要用引号包起来
$ele.css('background-color', 'red').css('border-radius', '50%');
// 高是宽的两倍
$div = $div.css("height", function () {
console.log("js>>>", this); // js的this本身
console.log("jq>>>", $(this)); // jq的this本身
console.log(">>>", $(this).width()); // jq对象指向的盒子宽度
return $(this).width() * 2; // jq会默认添加单位
}).css("background-color", "red");
4、类名操作
$ele.toggleClass('active'); // 实现切换,有就改为无,无就改为有
5、事件操作
$ele.on('click', function() {});
6、动画操作
$ele.slideUp();
7、文档操作(DOM)
$ele.append("<b>Hello</b>");
8、JS与JQ功能对比
<script type="text/javascript">
// 变量的命名规范:
// jq变量一般由$开头
// 1.jq的选择器: 满足css选择器语法
// var $div = $('.div1');
var $div = $('body #d1');
console.log($div);
// 2.文本操作
$div.text("d1 d1 d1");
$div.html("<b>d1 d1 d1</b>");
// 3.样式操作
$div.css({
width: "200px",
"border-radius": "50%"
});
// jq的方法基本都具有返回值,所以支持(建议)链式操作
$div.css("height", function () {
console.log("js>>>", this); // js的this本身
console.log("jq>>>", $(this)); // jq的this本身
console.log(">>>", $(this).width()); // jq对象指向的盒子宽度
return $(this).width() * 2; // jq会默认添加单位
}).css("background-color", "red");
// 4.类名操作,toggleClass,有改类名则删除,没有则添加类名
$('.b1').click(function () {
$div.toggleClass("active");
})
// 5.事件操作
$div.on('click', function () {
console.log("$div 被点击了");
})
// 6.动画操作
$('.b1').on('click', function () {
$div.slideToggle();
})
// 7.文档操作
// 创建标签
var $p = $("<p></p>");
// 样式操作
$p.addClass("p");
// 添加到页面
$div.append($p);
</script>
<!-- js -->
<script type="text/javascript">
// 1.选择器
var div = document.querySelector('.div2');
console.log(div);
// 2.文本操作
div.innerText = "d2 d2 d2";
div.innerHTML = "<b>d2 d2 d2</b>";
// 3.样式操作
div.style.width = "200px";
div.style.height = "200px";
div.style.background = "orange";
div.style.borderRadius = "50%";
// 4.类名操作
var b2 = document.querySelector('.b2');
b2.onclick = function () {
var c_name = div.className;
if (c_name.match("active")) {
div.className = c_name.replace(" active", "")
} else {
div.className += " active";
}
}
// 5.事件操作
// 绑定事件的两种方法:div.onclick = function(){} | div.addEventListener('click',function(){})
// 6.动画
// 实现动画两种方式:更改样式实现动画;更改类名来实现动画
</script>
五、JQ对象与JS对象
- js对象====>转换为jq对象:$ele = $(ele);
- jq对象====>转换为js对象:ele = $ele.get(0) | ele = $ele[0]
六、Ajax
- server.py
from flask import Flask, request
from flask_cors import CORS
# 获取服务器对象
app = Flask(__name__)
# 解决跨域
CORS(app, supports_credentials=True)
# 定义接口事件
@app.route('/loginAction', methods=["GET", "POST"])
def login_action():
print(request.args)
usr = request.args['usr']
ps = request.args['ps']
if usr == "abc" and ps == "123":
return "登录成功"
return "登录失败"
if __name__ == '__main__':
app.run()
// 安装Flask及Fllask-Cors包
- client.html
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
$.ajax({
url: "http://127.0.0.1:5000/loginAction",
data: {
usr: "zero",
ps: "123456"
},
success: function (data) {
console.log(data);
}
});
</script>
七、轮播图
- 简易jQuery版
<style type="text/css">
.wrap {
width: 300px;
height: 200px;
border: 1px solid black;
overflow: hidden;
position: relative;
}
ul {
width: 1200px;
height: 200px;
list-style: none;
margin: 0;
padding: 0;
position: absolute;
left: 0;
}
li {
width: 300px;
height: 200px;
float: left;
font: bold 100px/200px arial;
text-align: center;
color: white;
}
</style>
<div class="wrap">
<ul>
<li style="background:red;">1</li>
<li style="background:orange;">2</li>
<li style="background:pink;">3</li>
<li style="background:cyan;">4</li>
</ul>
</div>
<div>
<input type="button" value="图1" />
<input type="button" value="图2" />
<input type="button" value="图3" />
<input type="button" value="图4" />
</div>
<script src="js/jquery-3.1.1.min.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
$('input').click(function() {
$('ul').animate({
'left': -$(this).index() * $('li').width()
}, 500);
})
</script>
- swiper的使用
前端(十七)—— jQuery基础:jQuery的基本使用、JQ功能概括、JS对象与JQ对象转换、Ajax简单应用、轮播图的更多相关文章
- jQuery之制作简单的轮播图效果
[源代码] 链接:https://pan.baidu.com/s/1XpZ66D9fmSwWX3pCnGBqjA 密码:w104 [整体构思] 这个轮播图使用的是jQuery,所以Js的整体代量比较少 ...
- 用纯css、JavaScript、jQuery简单的轮播图
完成一个可以自动切换或点击数字的轮播图 HTML代码只需要一个div 包含着一个图片和一个列表,我们主要的思路就是通过点击相应的数字,改变图片的 路径. 有4张图片都在img文件夹里,名称为 img ...
- 最最最简单的轮播图(JQuery)
html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- 用jQuery实现简单的简单的轮播图
图片来源 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- JQuery手写一个简单的轮播图
做出来的样式: 没有切图,就随便找了一些图片来实现效果,那几个小星星萌不萌. 这个轮播图最主要的部分是animate(),可以先熟悉下这个方法. 代码我放到了github上,链接:https://gi ...
- jquery实现简单定时轮播图
JS $(document).ready(function(){ var index = 0; //刚开始设置一个index,index为图片的索引值 $(".pictureDemo img ...
- 用jquery制作的简单轮播图
我也是进入H5前端的小菜鸟一枚,最近才进入jquery的学习,所以打算对自己的学习进行记录. 今天分享的是一个简单的轮播图,这个轮播图的特效很简单,能够进行图片的轮播以及点击相应图片,图片能够跳转到相 ...
- 轮播图原生js实现和jquery实现和js面向对象方式实现
原生JS实现 html: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- JQuery的使用案例(二级联动,隔行换色,轮播图,广告插入)
JQuery的使用案例 (一)利用JQuery完成省市二级联动 第一步:确定事件(change事件),在绑定的函数里面获取用户选择的省份 第二步:创建二维数组来存储省份和城市 第三步:遍历二维数组中的 ...
- 前端基础功能,原生js实现轮播图实例教程
轮播图是前端最基本.最常见的功能,不论web端还是移动端,大平台还是小网站,大多在首页都会放一个轮播图效果.本教程讲解怎么实现一个简单的轮播图效果.学习本教程之前,读者需要具备html和css技能,同 ...
随机推荐
- cesium默认全屏按钮自定义
cesium默认全屏按钮自定义 1 隐藏默认的svg 2 修改它默认的按钮边框,背景 3 修改它点击时的样式 代码如下: .cesium-viewer-fullscreenContainer ...
- swiper内容滚动太长滚动Bug
swiper内部有个横向滚动的盒子 由于swiper滚动,导致滚动盒子的时候自动跳到了下一页 wiper提供一个 noSwipingClass的属性,用来阻止自带的滚动事件 window.mySwip ...
- python:TypeError: main() takes 0 positional arguments but 1 was given
TypeError: main() takes 0 positional arguments but 1 was given def main(self): 括号里加上self就好了
- shell编程2:数组的运用
Shell 数组 定义数组 在Shell中,用括号来表示数组,数组元素用"空格"符号分割开.定义数组的一般形式为: name=(name1 name2 name3) 复制代码 还可 ...
- 封装tab切换事件
HTML <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...
- html-body标签中相关标签 02
今日主要内容: 列表标签 <ul>.<ol>.<dl> 表格标签 <table> 表单标签 <fom> 一.列表标签 列表标签分为三种. 1 ...
- 分布式-技术专区-Redis并发竞争key的解决方案详解
Redis缓存的高性能有目共睹,应用的场景也是非常广泛,但是在高并发的场景下,也会出现问题:缓存击穿.缓存雪崩.缓存和数据一致性,以及今天要谈到的缓存并发竞争.这里的并发指的是多个redis的clie ...
- 查看linux防火墙的状态
如有需要可以加我Q群[308742428]大家一起讨论技术,有偿服务. 后面会不定时为大家更新文章,敬请期待. 喜欢的朋友可以关注下.iptables防火墙1.基本操作 # 查看防火墙状态 servi ...
- 最全的chrome显示www和https方法(全版本)
78以前的老版本 设置如下参数 chrome://flags/#omnibox-ui-hide-steady-state-url-scheme chrome://flags/#omnibox-ui-h ...
- Javascript权威指南——读书笔记
一.JavaScript核心语法 1.字符串中接受RegExp参数的方法 (1)text.search(pattern)返回首次匹配成功的位置 (2)text.match(pattern)返回匹配组成 ...