一、jquery的加载方法

  1. $(document).ready(function(){js代码});
  2. $(function(){js代码});(一般使用这个);

注意点1:使用jquery必须先导入函数库文件,使用一个单独的script标签,结束代码另起一行script。

<script src="./jquery-1.12.4.js"></script>
<script>js的代码</script>

注意点2:在加载完毕后需要判断是否加载成功,一般使用length属性判断输出,如果不成功,length输出0;成功输出非0.

<script>
$(function () {
$div = $(".box");
console.log($Div.length);
})
</script>

二、jquery选择器,获取标签

说明:选择器和css选择器的写法相同。

  • 选择元素:
$(document) //选择整个文档对象
$('li') //标签选择元素
$('#myId') //通过id选择元素
$('.myClass') // 通过class属性选择
$('input[name=first]') // 选择name属性等于first的input元素,通过行内属性和标签结合选择
$('#ul1 li span') //层级选择
  • 修饰过滤
$('ul li:first') //选择ul元素下的第一个li
$('ul li:odd') //选择ul元素下的li的奇数行
$('ul li:eq(2)') //选择ul元素下的第3个li
$('ul li:gt(2)') // 选择ul元素下的第三个之后的li
$('ul li:lt(2)') // 选择ul元素下的第三个之前的li,不包括第三个
$('div:visible') //选择可见的div元素
  • 函数过滤
$('div').has('p'); // 选择包含p元素的div元素
$('div').not('.myClass'); //选择class不等于myClass的div元素
$('div').filter('.myClass'); //选择class等于myClass的div元素
$('div').first(); //选择页面中第1个div元素
$('div').eq(5); //选择角标是5的div元素
  • 选择集转移
$('div').prev('p'); //选择div元素前面的第一个p元素
$('div').next('p'); //选择div元素后面的第一个p元素
$('div').closest('div'); //选择离div最近的那个div父元素
$('div').parent(); //选择div的一级父元素
$('div').children(); //选择div的所有子元素
$('div').siblings(); //选择div的同级元素
$('div').find('.myClass'); //选择div内的class等于myClass的所有元素

三、jquery的动画animate方法分析

  • 使用方法
$('#div1').animate({
"width":300,
"height":300
},1000,'swing',function(){
alert('done!');
});
  • 参数分析:
  • 第一个参数设置需要变化的属性,一般用来设置与尺寸相关的属性变化,如果改变的是颜色需要额外引入jquery.color的库。

注意1:属性名必须添加引号,多个属性用逗号隔开值设置如上,可以是300,"300","300px",程序可以识别。

  • 第二个参数代表动画的时间,以毫秒为单位。

  • 第三个参数为运动的方式,"swing"表示渐变,先慢后快,"linear"代表匀速运动。
  • 第四个参数表示动画执行完毕后需要执行的函数,可以不写这个参数。

注意2:如果只写第一个参数,则默认500ms,匀速运动,没有执行后动作。

扩展:点击按钮返回顶部页面的通用方法

$("html,body").animate({
"scrollTop":0
});

四、绑定点击事件click

  • 语法:
$('#btn1').click(function(){});

说明:参数可以是匿名函数,也可以是命名函数;但如果需要传参,则必须使用匿名函数。

  • 内部:使用$(this)代表当前点击的这个元素,如果使用this则是原生的对象。

  • 几乎所有的元素类型都可以使用click事件,点击触发,不一定是a、input标签。

五、页面滚动事件

  • 语法
$(window).scroll(function(){
......
})

与之相关的有两个常用的获取滚动距离的方法:

$(document).scrollTop(); //获取距离文档顶部的距离
$(document).scrollLeft();//获取距离文档左边的距离

注意:滚动事件只有在文档的高度或宽度大于窗口的宽高时才会生效。

六、操作属性

  • 普通样式
// 获取div的样式
$("div").css("width"); //获取单个样式
$("div").css(["width","height"]);
//获取多个样式,得到一个集合 //设置div的样式
$("div").css("width","30px");
$("div").css({fontSize:"30px",color:"red"}); $(function () {
var $div = $(".box").css("width", function (index,width) {
console.log(index,width);
return 500; //返回设置的宽度
// index代表div的角标,width参数为获取原来的宽度
});
})

注意点1:设置样式时,如果只有一个样式,用逗号隔开,不是冒号;当多个样式设置时才用冒号。

注意点2:选择器获取的是一个选择集,那么获取到的样式为第一个标签的样式。

操作类名:

$("#div1").addClass("divClass2") //为id为div1的对象追加样式divClass2
$("#div1").removeClass("divClass") //移除id为div1的对象的class名为divClass的样式
$("#div1").removeClass("divClass divClass2") //移除多个样式
$("#div1").toggleClass("anotherClass") //重复切换anotherClass样式

注意:addClass()方法中的括号内直接写类名,不再是选择样式。

操作html标签

// 取出html内容
var $htm = $('#div1').html();
// 设置html内容
$('#div1').html('<div>xxx</div>');

注意:取出时会将这个标签下的所有的html内容输出,包括标签本身。

只取文本内容

// 取出文本内容
var $htm = $('#div1').text();
// 设置文本内容
$('#div1').text('添加文字');

注意:设置文本内容时,加入标签是没有作用的,标签会被当做文本进行解析。

设置行内属性

// 取出按钮的值
var $value = $('input').attr('value');
// 设置按钮的值
$('input').attr({ "value":"按钮" });
// 取出图片的地址
var $src = $('#img').prop('src');
// 设置图片的地址和alt属性
$('#img').prop({src: "test.jpg", alt: "" });

注意:以上attr方法和prop方法使用方式一样;但是attr可以获取系统不存在的自定义的属性,而prop获取不到;所有的属性需要用引号包裹,否则报错。

操作尺寸

  • 获取元素尺寸
$("div").width() // 获取元素width
$("div").height() //获取元素height
$("div").innerWidth() //获取包括padding的width
$("div").innerHeight() //获取包括padding的height
$("div").outerWidth() //包括padding和border的width
$("div").outerHeight()//包括padding和border的height
$("div").outerWidth(true)//包括padding和border以及margin的width
$("div").outerHeight(true)//包括padding和border以及margin的height
  • 获取浏览器可视区的宽高
$(window).width();
$(window).height();
  • 获取页面文档的宽度高度

$(document).width();
$(document).height();
  • 获取元素相对页面的绝对位置
var $n1 = $("div").offset();
$left = $n1.left; # 获取相对页面左边的距离
$top = $n1.top; # 获取相对页面上边的距离
  • 获取元素相对父类的绝对位置
var $n1 = $("div").offsetParent();
$left = $n1.left; # 获取相对父类左边的距离
$top = $n1.top; # 获取相对父类上边的距离

七、常用的特殊效果(动画)

  • 淡入、淡出和切换淡入淡出
 $('#div1').fadeIn(1000,'swing',function(){
alert('done!');
}); //淡入,事件1秒,渐变,参数和animate相仿
fadeOut() 淡出
fadeToggle() 切换淡入淡出
  • 参数:

  • 第一个参数代表动画的事件,单位为ms;
  • 第二个参数表示动画的方式,"swing"表示渐变,先慢后快,"linear"代表匀速运动。
  • 第三个参数表示动画完成后执行的函数。

注意:下面的动画方法和这里的参数一样。

  • 隐藏、显示和切换
hide() 隐藏元素
show() 显示元素
toggle() 切换显示状态,参数和上面相同
  • 展开、卷起和切换
slideDown() 向下展开
slideUp() 向上卷起
slideToggle() 展开和卷起切换

说明:以上的效果一般使用在点击事件中。

八、循环

  • 语法:
 $('div').each(function(i,j){
...
})

说明:当一次获取了多个div时,如果需要对每个元素进行不同的有规律的操作,使用each方法,内部用$(this)代表循环到的那个元素。

  • 默认参数

循环方法中的function匿名函数中携带了两个默认参数,如上代码,i代表当前div的角标值,j代表当前div元素本身;这两个参数可以用任何变量表示。

  • 扩展:
    each循环和annimate动画嵌套不能改变颜色,如下:
$div.each(function (i,j) {
$(this).animate({
"background":"blue",
});
});

说明:该代码欲要实现每个div背景色逐个变蓝,实际不会起任何的作用;但对于宽高等属性是起作用的。

九、this关键字

$lis.click(function () {
//此时的$(this)代表$lis选择集下的当前点击的$lis
$(this).prevAll().each(function () {
//$(this)代表点击的$lis.prevAll(),this代表的元素发生了改变
$(this).animate({
"left": 21 * $(this).index(),
})
})
})

总结:this 永远代表当前触发事件的那个对象。

  • 作者:天宇之游
  • 出处:http://www.cnblogs.com/cwp-bg/
  • 本文版权归作者和博客园共有,欢迎转载、交流,但未经作者同意必须保留此段声明,且在文章明显位置给出原文链接。

jquery入门知识点总结(转)的更多相关文章

  1. 前端笔记----jquery入门知识点总结

    一.jquery的加载方法 $(document).ready(function(){js代码}); $(function(){js代码});(一般使用这个); 注意点1:使用jquery必须先导入函 ...

  2. 前端笔记----jquery入门知识点总结 (转)

    http://www.cnblogs.com/cwp-bg/p/7633623.html 一.jquery的加载方法 $(document).ready(function(){js代码}); $(fu ...

  3. jQuery入门知识点

    <精通ASP.NET MVC3框架>第20章 1.jQuery文件jquery-1.5.1.js:jquey核心库常规版jquery-1.5.1.min.js:jquery核心库最小化版j ...

  4. jQuery入门(1)jQuery中万能的选择器

    jQuery入门(1)jQuery中万能的选择器 jQuery入门(2)使用jQuery操作元素的属性与样式 jQuery入门(3)事件与事件对象 jQuery入门(4)jQuery中的Ajax()应 ...

  5. jQuery入门(2)使用jQuery操作元素的属性与样式

    jQuery入门(1)jQuery中万能的选择器 jQuery入门(2)使用jQuery操作元素的属性与样式 jQuery入门(3)事件与事件对象 jQuery入门(4)jQuery中的Ajax()应 ...

  6. jQuery入门(3)事件与事件对象

    jQuery入门(1)jQuery中万能的选择器 jQuery入门(2)使用jQuery操作元素的属性与样式 jQuery入门(3)事件与事件对象 jQuery入门(4)jQuery中的Ajax()应 ...

  7. jQuery入门(4)jQuery中的Ajax应用

    jQuery入门(1)jQuery中万能的选择器 jQuery入门(2)使用jQuery操作元素的属性与样式 jQuery入门(3)事件与事件对象 jQuery入门(4)jQuery中的Ajax()应 ...

  8. JQuery入门

    JQuery入门 1 jQuery的概述 1.1 jQuery简介 jQuery是一个 JavaScript函数库,它是一个“写的更少,但做的更多”的轻量级 JavaScript 库.jQuery 极 ...

  9. jQuery入门必须掌握的一些API

    jQuery 中文版文档:http://www.css88.com/jqapi-1.9/category/ajax/ jQuery入门,必须掌握以下的API,平时工作中经常会用到.未列出的API,在掌 ...

随机推荐

  1. 陈敏-第一周Java课程总结

    一.本周学习总结 1.感受到JAVA的神奇魅力,以及其跨平台的优势 2.第一次接触感觉还是有很多不懂. 3.了解了JDK 二.书面作业 (一)为什么java程序可以跨平台运行?执行java程序的步骤是 ...

  2. 201521123005 《Java程序设计》 第十二周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student对象(属性:int id, String name,int age,doubl ...

  3. AJAX二级下拉联动【XML方式】

    AJAX二级下拉联动案例 我们在购物的时候,常常需要我们来选择自己的收货地址,先选择省份,再选择城市- 有没有发现:当我们选择完省份的时候,出现的城市全部都是根据省份来给我们选择的.这是怎么做到的呢? ...

  4. CSDN博客新手使用方案

    CSDN博客简易使用 在CSDN上写博客,总是遇到很多问题,虽然这些问题很简单,但是对于新手来说,缺经常遇到,因此写篇博客记载. 一.CSDN的博客如何上传图片               如果有现成 ...

  5. 简易RPC框架-私有协议栈

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  6. 每天学点SpringMVC-拦截器

    1. 先写个Hello World 1.1 写一个Interceptor class并实现HandlerInterceptor接口 public class FirstInterceptor impl ...

  7. spring boot / cloud (十八) 使用docker快速搭建本地环境

    spring boot / cloud (十八) 使用docker快速搭建本地环境 在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越 ...

  8. Linux入门之常用命令(4)vi编辑器

    vi分为三种模式 一般模式:删除字符.删除整行.复制粘贴等操作 编辑模式:i o a r进入 输入字符  Esc退出 命令行模式::或/ 将光标移动到最末行 搜寻数据 读取或替换 退出vi 显示行号 ...

  9. ElasticSearch入门(3) —— head插件

    #### 安装ES head插件 具体请参考github地址:https://github.com/mobz/elasticsearch-head 使用 安装Install # 在线安装head插件 ...

  10. JavaScript 版数据结构与算法(一)栈

    今天,我们要讲的是数据结构与算法中的栈. 栈的简介 栈是什么?栈是一个后进先出(LIFO)的数据结构.栈有啥作用?栈可以模拟算法或生活中的一些后进先出的场景,比如: 十进制转二进制,你需要将余数倒序输 ...