jQuery基础知识(一)

    科技2022-08-10  97

    JavaScript 库 是一个封装好的特定的集合(方法和函数)。比如动画animate、hide、show、获取元素等

    简单理解:是一个js文件,里面对原生js代码进行封装,存放到里面。我们使用时只需调用即可。

    jQuery的概念

    1.快速、简洁的JavaScript库。 2.封装了JavaScript常用的功能代码,优化了DOM操作、事件处理、动画设计和Ajax交互,以及深复制、浅复制。 3.学习jQuery的本质:就是学习调用这些函数和方法。

    jQuery的入口函数

    $(function(){ ... //此处是页面DOM加载完成的入口 }); $(document).ready(function(){ ... //此处是页面DOM加载完成的入口 });

    1.等着DOM结构渲染完毕即可执行内部代码,不必等到所有外部资源加载完成, jQuery帮我们完成了封装。 2.相当于原生js中的DOMContentLoaded. 3.不同于原生js中的load事件是等页面文档、外部的is文件、css文件、 图片加载完毕才执行内部代码。

    jQuery的顶级对象$

    1、$是jQuery的别称。 2、$是jQuery的顶极对象。相当于原生JavaScript中的window。

    冲突问题的解决方式

    冲突问题的解决方式1 jQuery框架中释放 $ 符号的使用权 注意点:释放操作必须在编写其他jQuery代码之前编写 释放之后就不能用$,改为使用jQuery

    jQuery.noConflict(); jQuery(function () { alert("hellow") });

    冲突问题的解决方式 2 自定义访问符号

    <script> var $jn = jQuery.noConflict(); $jn("div").hide(); $jn(function(){ alert("jn是自定义访问符号"); }); </script>

    jQuery对象

    1.DOM对象:用原生js获取过来的对象就是DOM对象.

    jQuery对象:用jquery方 式获取过来的对象是jQuery对象。         jQuery对象本质是:利用$对DOM对象包装后产生的对象(伪数组形式存储)。

    jQuery 对象只能使用jQuery 方法,DOM对象则使用原生的JavaScirpt 属性和方法。

    约定:如果获取的是 jQuery 对象, 那么要在变量前面加上 $. var $variable = jQuery对象 var variable = DOM对象

    DOM对象与jQuery对象之间的相互转换:

    DOM对象转化成jQuery对象: $(DOM对象)

    jQuery对象转化成DOM对象(两种方式):$(‘选择器’)[index] 和 $(‘选择器’ ).get(index);

    1. DOM对象转换为jQuery对象

    (1)使用原生js获取过来DOM对象

    var myDiv = document.querySelector( 'div'); $m = $(myDiv);

    2. jQuery对象转换为DOM对象 (1) 直接从jQuery对象身上通过下标获取元素

    $('div' )[0];

    (2) 通过jQuery提供的get()方法加一个下标获取对应的元素

    $('div' ).get(0);

    jQuery的原型

    $.prototype、jQuery.prototype、$.fn、jQuery.fn

    <script type="text/javascript"> var $ = jQuery = function(){ return jQuery.fn.init(); // 调用原型 init() }; jQuery.fn = jQuery.prototype = { init: function(){ // 在初始化原型方法中返回实例的引用 this.length = 0; this.test = function(){ return this.length; } return this; }, jquery: "1.3.2", // 原型属性 length: 1, size: function(){ // 原型方法 return this.length; } }; console.log($().jquery); // 返回 "1.3.2" console.log($().test()); // 返回 0 console.log($().size()); // 返回 0 </script>

    ready

    ready事件是jQuery自己定义的,在页面的DOM结构加载完毕之后就会执行,而window.onload事件是BOM规定对的,它在页面的所有资源加载完毕才会执行。

    $(document).ready(function(){code....})

    简化写法:

    $(function(){ console.log("ready"); }) 注意:此案例必须处于服务器环境下 console.log(1); window.onload = function(){ console.log("load"); } $(document).ready(function(){ console.log("ready") })

    jQuery基础选择器

    $(“选择器" ) //里面选择器直接写CSS选择器即可,但是要加引号

    jQuery层级选择器

    jQuery设置样式

    1.传两个参数,分别是属性名和属性值      $(‘div’).css(‘属性’, ‘属性值’);

    $("div").css("background", "pink");

    2.传一个参数,可以是一个对象      $(‘div’).css({‘属性’, ‘属性值’});

    $("div").css({ width: "100", height: 100, background: "pink" });

    jQuery筛选选择器

    $(function() { $("ul li:first" ).css("color", "red"); $("ul li:eq(2)").css("color", "blue"); $("ol li:odd" ).css("color",“skyblue"); $("ol li:even" ).css("color", "pinkf ); })

    jQuery筛选方法(重点)

    <script> //注意一下都是方法带括号 $(function() { //1.父parent() 返回的是最近一 级的父级元素亲爸爸 console .log($(".son" ).parent()); //2.子 // (1)亲儿子 children() 子代选择器 ul>li // $(".nav"). children("p" ).css("color", "red"); // (2) 可以选里面所有的孩子包括儿子和孙子 find() 类似于后代选择器 $(" .nav").find("p").css("color", "red"); } </script> <script> //注意一下都是方法带括号 $(function() { // 1.兄弟元素siblings除了自身元素之外的所有亲兄弟 $("ol.item" ).siblings("1i").css("color", "red"); // 2.第n个元素 // (1) 我们可以利用选择器的方式选择 // $("ul 1i:eq(2)").css("color", "blue" ); // $("ul 1i:eq(“+ index +”)").css("color", "blue" ); // (2) 我们可以利用选择方法的方式选择 //$("ul 1i").eq(2).css("color", "blue"); //$("ul 1i").eq(index).css("color", "blue"); }; </script>

    $(this)

    jQuery获取当前元素 ,this不要加引号

    隐式迭代(重要)

    遍历内部DOM元素(伪数组形式存储)的过程就叫做隐式迭代。 简单理解:给匹配到的所有元素进行循环遍历,执行相应的方法,而不用我们再进行循环,简化我们的操作,方便我们调用。

    <script> $(function() { // 1.隐式迭代给所有的按钮都绑定了点击事件 $("button"). click(function() { // 2.当前的元素变化背景颜色 $(this).css("background", "pink"); // 3.其余的兄弟去掉背景颜色隐式迭代 $(this).siblings("button" ).css( "background",""); }); }) </script>
    Processed: 0.017, SQL: 8