推荐文章:
Liunx系列:
2、Linux进阶命令 任务编程系列:
网络编程:
1、网络编程
前端技术:
jQuery的介绍
1、jQuery的定义
jQuery是对JavaScript的封装,它是免费、开源的JavaScript函数库,jQuery极大地简化了JavaScript编程。
2、jQuery的作用
jQuery和JavaScript它们的作用一样,都是负责网页行为操作,增加网页和用户的交互效果,只不过jQuery简化了JavaScript编程,jQuery实现交互效果更简单。
3、jQuery的优点
4、小结
jQuery的用法
提示:jQuery官网:https://code.jquery.com
1、jQuery的引入
<script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
2、jQuery的入口函数
我们知道使用js获取标签元素,需要页面加载完成以后再获取,我们通过给onload事件属性设置了也个函数来获取标签元素,而jquery提供了ready函数来解决这个问题,保证获取标签元素没有问题,它的速度比原生的window.onload更快。
入口函数示例代码(原生js代码):
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script>
window.onload = function(){
var oDiv = document.getElementById('div01');
alert('原生就是获取的div:' + oDiv);
};
$(document).ready(function(){
var $div = $('#div01');
alert('jquery获取的div:' + $div);
});
</script>
<div id="div01">这是一个div元素</div>
注:符号就是jquery的象征,本质就是函数,只不过这个函数名(
结论:ready 等待页面标签加载完成以后执行ready事件,不会等待资源数据加载完成
入口函数简写示例代码(jquery的简写方式):
$(function(){
var $div = $('#div01');
alert($div);
})
jQuery选择器
1、jQuery选择器的介绍
jquery选择器就是快速选择标签元素,获取标签的,选择规则和css样式一样
2、jQuery选择器的种类
示例代码:
$('#myId') //选择id为myId的标签
$('.myClass') //选择class为myClass的标签
$('li') //选择所有li标签
$('#ul1 li span') //选择ul1标签下的所有li标签下的span标签
$('input[name=first]') //选择name属性为first的input标签
说明:
可以使用length属性来判断标签是够选择成功,如果length大于0表示选择成功,否则选择失败。
$(function(){
result = $('#div').length;
alert(result);
});
选择集过滤
1、选择集过滤的介绍
选择集过滤就是在选择标签的集合里面过滤自己需要的标签。
2、选择集过滤的操作
has方法的示例代码:
<script>
$(function(){
//has方法的使用
var $div = $("div").has("#mytext");
//设置样式
$div.css({"background":"red"});
})
</script>
<div>
这是第一个div
<input type="text" id="mytext">
</div>
<div>
这是第二个div
<input type="text">
<input type="button">
</div>
eq方法的示例代码:
<script>
$(function(){
//eq方法的使用
var $div = $("div").eq(1);
//设置样式
$div.css({"background":"blue"});
});
</script>
<div>
这是第一个div
<input type="text" id="mytext">
</div>
<div>
这是第二个div
<input type="text">
<input type="button">
</div>
选择集转移
1、选择集转移介绍
选择集转移就是以选择的标签为参照,然后获取转移后的标签
2、选择集转移操作
$('#box').prev(); //表示选择id是box元素的上一个同级元素
$('#box').prevAll(); //表示选择id是box元素的上面所有同级元素
$('#box').next(); //表示选择id是box元素的下一个同级元素
$('#box').nextAll(); //表示选择id是box元素的下面所有同级元素
$('#box').parent(); //表示选择id是box元素的父元素
$('#box').children(); //表示选择id是box元素的所有子元素
$('#box').siblings(); //表示选择id是box元素的所有同级元素
$('#box').find('.myClass'); //表示选择id是box元素的class等于myClass的元素
获取和设置元素的内容
1、html方法的使用
jquery中的html方法可以获取和设置标签的html内容
示例代码:
<script>
$(function(){
var $div = $('#div1’);
//获取标签的html内容
var result = $div.html();
alert(result);
//设置标签的html内容,之前的内容都会清除
$div.html("<span style='color:red'>你好</span>");
//追加html内容
$div.append("<span style='color:red'>你好</span>")
});
</script>
说明:给指定标签追加html内容使用append方法
获取和设置元素属性
1、prop方法的使用
之前使用css方法可以给标签设置样式属性,那么设置标签的其他属性可以使用prop方法。
示例代码:
<script>
$(function(){
var $a = $('#link01');
var $input = $('#input01');
//获取元素属性
var sId = $a.prop("id");
alert(sId);
//设置元素属性
$a.prop({"href":"http://baidu.com","title":'这是去到百度的链 接',"class":"a01"});
//获取value属性
//var sValue = $input.prop("value");
//alert(sValue);
//获取value属性使用val()方法的简写方式
var sValue = $input.val();
alert(sValue);
//设置value值
$input.val("2222");
});
</script>
<a id="link01">这是一个链接</a>
<input type="text" id="input01" value="11111">
说明:获取value属性和设置value属性还可以通过val方法来完成
2、小结
jQuery事件
1、常用事件
示例代码请私信作者哦
事件代理
1、事件代理介绍
事件代理就是利用事件冒泡的原理(事件冒泡就是事件会向它的父级一级一级传递),把事件加到父级上,通过判断事件来源,执行相应的子元素的操作,事件代理首先可以极大减少事件绑定次数,提高性能;其次可以让新加入的子元素也可以拥有相同的操作。
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script>
$(function(){
var $btn = $("#btn1");
var $div = $("div");
$btn.click(function(){
alert('我是按钮');
//扩展:取消事件冒泡,就是不让事件向父级控件传递
//默认是事件会进行冒泡
return false;
});
$div.click(function(){
alert('我是div');
});
});
</script>
<div>
<p id="p1">哈哈</p>
<input type="text" value="按钮" id="btn1">
</div>
事件代理写法
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script>
$(function(){
var $btn = $("#btn1");
var $div = $("div");
$btn.click(function(){
alert('我是按钮');
//扩展:取消事件冒泡,就是不让事件向父级控件传递
//默认是事件会进行冒泡
return false;
});
// $div.click(function(){
// alert('我是div');
// });
//通过事件代理让父控件代理子控件的事件、然后执行子控件的相关操作
var $ul = $("div ul");
$ul.delegate("li","click",function(){
$(this).css({"color":"red"});
});
//扩展:可以代理不同子控件的事件,多个选择器使用逗号进行分割就行了
var $div1 = $("#box");
$div1.delegate("#p2,#btn2","click",function(){
alert("ok");
});
});
</script>
<div>
<p id="p1">哈哈</p>
<input type="text" value="按钮" id="btn1">
<ul>
<li>哈哈</li>
<li>嘻嘻</li>
<li>美滋滋</li>
<li>啦啦啦</li>
</ul>
</div>
<div id="box">
<p id="p2">哈哈</p>
<input type="text" value="按钮" id="btn2">
</div>
JavaScript对象
1、JavaScript对象的介绍
JavaScript中的所有事物都是对象:字符串、数值、数组、函数等都可以认为是对象,此外,JavaScript允许自定义对象,对象可以拥有属性和方法。
2、JavaScript创建对象的操作
创建自定义JavaScript对象有两种方式:
Object类创建对象的示例代码
<script>
var person = new Object();
//添加属性
person.name = 'tom';
person.age = '25';
//添加方法
person.sayName = function(){
alert(this.name);
}
//调用属性
alert(person.age);
person.sayName();
</script>
对象字面量创建对象的示例代码:
<script>
var person2 = {
name:'Rose',
age:18,
sayName:function(){
alert('My name is' + this.name);
}
}
//调用属性和方法
alert(person2.age);
person2.sayName();
</script>
说明:调用属性和方法的操作都是通过点语法的方式来完成,对象的创建推荐使用字面量方式,因为更加简单。
3、小结
创建自定义javascript对象有两种方式:
json
1、json的介绍
json是JavaScript Object Notation的首字母缩写,翻译过来就是JavaScript对象表示方法,这里说的json就是类似于JavaScript对象的字符串,它同时是一种数据格式,目前这种数据格式比较流行,逐渐替换掉了传统的xml数据格式。
2、json格式
json有两种格式:
对象格式:
对象格式的json数据,使用一对大括号({}),大括号里面放入key:value形式的键值对,多个键值对使用逗号分隔。
对象格式的json数据:
{
“name” = “李四”,
“age” = 18
}
格式说明:
json中的(key)属性名称和字符串值需要用双引号引起来,用单引号或者不用引号会导致读取数据错误。
数组格式:
数据格式的json数据,使用一对中括号([]),中括号里面的数据使用逗号分隔。
数组格式的json数据:
[“tom”, 18, “programmer"]
实际开发的json格式比较复杂,例如:
{
"name": "jack",
"age": 20,
"hobby": [“reading”,”travel”,"photographs"],
"school": {
"name": "Merrimack College",
“Location": "North Andover, MA"
}
}
3、json数据转换成JavaScript对象
Json本质上是字符串,如果在js中操作json数据,可以将json字符串转化为JavaScript对象。
示例代码:
var sJson = ‘{"name”:"tom”,"age":18}’;
var oPerson = JSON.parse(sJson);
//操作属性
alert(oPerson.name);
alert(oPerson.age);
4、小结
ajax
1、ajax的介绍
ajax是一个前后台配合的技术,它可以让javascript发送异步的http请求,与后台通信进行数据的获取,ajax最大的优点就是实现局部刷新,ajax可以发送http请求,当获取到后台数据的时候更新页面显示数据实现局部刷新。意思就是当前端页面和后台服务器进行数据交互就可以使用ajax了。
提示:在html页面使用ajax需要在web服务器环境下运行,一般向自己的web服务器发送ajax请求。
2、ajax的使用
jquery将它封装成了一个$.ajax(),我们可以直接用这个方法来执行ajax请求。
示例代码:
<script>
$.ajax({
//1.url 请求地址
url:'http://t.weather.sojson.cpm/api/weather/city/101010100’,
//2.type 请求方式,默认是‘GET’,还有‘POST’
type:'GET',
//3.dataType 设置返回的数据格式,常用的是‘json’格式
dataType:'json',
//4.data 设置发送给服务器的数据,没有参数不需要设置
//5.success 设置请求成功后的回调函数
success:function(response){
console.log(response);
},
//6.error 设置请求失败后的回调函数
error:function(){
alert("请求失败,请稍后尝试");
},
//7.async 设置是否异步,默认值是‘true’,表示异步,一般不用写
async:true,
});
</script>
ajax方法的参数说明:
ajax的简写方式:
$.ajax按照请求方式可以简写成$.get或者$.post方式
END