jQuery(一)

一、jQuery简介

什么是Jquery?
jQuery的本质就是JavaScript
只是将JavaScript的某些方法封装成一个库,
极大简化了原生JavaScript开发。
(潜台词:JS怎么用,Jquery就怎么用,只是把JS的代码简化了)
                
什么是库? lib
“库”--->(library--文库,图书馆)-->  将一些相关函数方法进行封装以便使用。
类似于jar包。
                
Jquery的优势:
1.轻量级,jquery库的大小仅仅几十kb


2.强大的选择器
用更精简的代码即可获取指定的html元素,
摈弃了之前通过document.getElement等方法,并支持批量操作元素)
                
3.浏览器的兼容性,能兼容大部分市面上的浏览器
                
4.等等...    

                
jQuery的版本:
主要分为1.x.x   2.x.x   3.x.x
jQuery的三个版本功能几乎相同,主要是浏览器的兼容性不同,
随着版本的升高,jQuery逐步放弃了对老旧浏览器的兼容
 

二、如何使用jQuery

就理解为 引入的一个外部的JS  这个外部的JS就是Jquery
如下:
<script src="xxx" ></script>
然后再另外的script标签中就可以既使用JS代码 也可以使用Jquery代码
            
如何引用:
1.下载jquery的js文件  但是Hbuiler内置了如何操作:
A.选中js文件夹
B.右键创建一个js文件
C.在下方选中jquery1.x  然后重命名即可
D.不要去动里面的代码
            
2.在script标签中引入刚刚下载的jquery文件
<script src="js/jquery.js"></script>
                
3.设置语法提示库
右下角  选择jquery  xxx
                
                
4.测试
通过alert($) ;  如何正确弹窗就说明OK了 反之失败 
                
                
凡是在控制台看到了这一行代码:$ is not defined
就表示Jquery没有引入成功
                
                
Jquery的压缩版:
在开发中:会经常看见xxxx.min.xx格式的文件
                
看到了这个min就理解为压缩版即可。
就是去除了空格、换行、注释等,让占据空间变小而已。
                    
没有min关键字的就是未压缩版
                
了解即可。
                
                
压缩版理解为 上线版   项目都上线了,希望项目的体积越小。
                
未压缩版理解为 开发版  项目还没有上线,我随时需要对代码进行修改

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script src="js/jquery.js"></script>
        <script>
 
           alert($);
 
        </script>
    </body>
</html>

三、初学者的引入jQuery的常见错误

1.引入js的路径有问题或忘记引入jquery
            
2.顺序问题,要先引入jquery  再写相关的代码  script的顺序问题
            
3.不要在引入的jquery的script标签内部写代码

四、jQuery的魔力1

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        
        <h1>hello js</h1>
        
        <script src="js/jquery.js">
        </script>
        
        <script>
            //魔力1---体现代码的简化
            
            //分别用JS和Jquery来将页面中的h1标签的内容 修改为 你好 
             
            //实现
            // document.getElementsByTagName("h1")[0].innerText = "你好";
            
 
            
            //jquery实现   暂时先将$("h1") 理解为 获取所有的h1标签
            // $("h1").text("你好");
            
            
            
        </script>
        
    </body>
    
</html>

五、jQuery的魔力2

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        
        <h1>hello js</h1>
        <h1>hello js</h1>
        <h1>hello js</h1>
        <h1>hello js</h1>
        <h1>hello js</h1>
        <h1>hello js</h1>
        
        <script src="js/jquery.js">
        </script>
        
        <script>
            //魔力2---批量操作元素的简化
            
            //分别用JS和Jquery来将页面中所有的h1标签的内容 修改为 你好 
             
            //JS实现
            // var h1 = document.getElementsByTagName("h1");
            
            // for (let i = 0; i < h1.length; i++) {
            //     h1[i].innerText = "你好";
            // }
            
            
            //jquery实现   暂时先将$("h1") 理解为 获取所有的h1标签
            $("h1").text("你好");
            
            
            
        </script>
        
    </body>
    
</html>

六、jQuery的常见方法


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <input type="text" id="a1"  value="123" />
        
        <h3>这是一个h3标签</h3>
        
        
        
        <p style="color: red;">这是p标签</p>
        
        
        
        <button>按钮</button>
        
        
        <script src="js/jquery.js"></script>
        <script>
            //暂时先将$("xx") 理解为是获取xx元素  且暂时理解为它是jquery对象
            //暂时将 document.getElementByXxx 理解为JS对象
            //注意: js对象无法使用Juqery的相关用法  Juqery对象也无法使用JS的相关用法
            
            //Jquery中常见方法如下:
            // val()   text()   html()     css()  attr()     prop()
            
            //将input组件的值修改
            // document.getElementById("a1").value = "你好";
            // $("input").val("鸟");
            
            //注意事项:  js的value是属性 jquery的val是方法
            
            //val使用场景:只能修改表单元素 且拥有value值的组件
            //例如文本框密码框  但是像h1标签 span标签就无法使用该方法
            
            //val的2种用法:
            //1.取值:
            // var str = $("input").val();
            // alert(str);
            //2.赋值
            // $("input").val("~~~");
            
            
            //注意事项:  js的innerText是属性 jquery的text是方法
            
            //text使用场景:只能修改非表单元素  
            //例如h1标签 span标签  但是像文本框密码框就无法使用该方法
            
            //text的2种用法:
            //1.取值:
            // var str = $("h3").text();
            // alert(str);
            //2.赋值
            // $("h3").text("!!!");
            
            
            //注意事项:  js的innerHtml是属性 jquery的html是方法
            
            //html使用场景:只能修改非表单元素  
            //例如h1标签 span标签  但是像文本框密码框就无法使用该方法
            
            //html和text的区别是:前者会将html标签识别  后者只会解析成文本
            
            //html的2种用法:
            //1.取值:
            // var str = $("h3").html();
            // alert(str);
            //2.赋值
            // $("h3").html("!!!");
            
            
            
            //注意事项:  js的style.xxx是属性 jquery的css是方法
            
            //css使用场景:修改或获取HTML元素的CSS的样式  
            
            
            //css的2种用法:
            //1.取值:
            // var str = $("p").css("color");
            // alert(str);
            // 2.赋值
            // $("p").css("color" , "yellow");
            
            
            
            
            //attr使用场景:修改或获取HTML元素的属性 该属性的值 不为true或false
            //常见的属性A类(等于一个具体的值):id   class   name    type      src   href   
            
            //attr的2种用法:
            //1.取值:
            // var str = $("input").attr("id");
            // alert(str);
            // 2.赋值
            // $("input").attr("id" , "aaa");
            
            // $("button").attr("disabled","disabled");//没问题
            //但是你会发现 无法通过attr将其修改为 可以使用
            
            //prop使用场景:修改或获取HTML元素的属性 该属性的值 为true或false
            //常见的属性B类(等于一个true或false):disable  readonly     checked
            // var str = $("button").prop("disabled");
            // alert(str);
            
            $("button").prop("disabled",false);
            
            
            
            
        </script>
        
    </body>
    
</html>

七、文档就绪函数


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        
    </head>
    <body>
        
        
        
        <script src="js/jquery.js">
        </script>
        <script>
            //了解即可  只要你保证你的js代码 放在HTML最下方  就可以不用写它
            
            //文档就绪函数意义:  将HTML加载完毕之后 再执行
             $(function(){
                 //代码~~
             });
            //看到上面的代码 就需要知道 他是文档就绪函数
            
            
        </script>
    </body>
</html>

八、js对象和jQuery对象的讲解

jquery对象:
$(“xxx”)函数会返回一个对象,这个对象被称为jQuery对象。
例如刚刚所学习的css(),html()等都是jQuery对象的专属方法。
            
            
dom对象:就是JS通过document对象获取的对象
例如document.getElementById();
            
js对象无法使用Juqery的相关用法  Juqery对象也无法使用JS的相关用法
            


js对象和jquery对象的区别:
下表列出了dom对象和jQuery对象进行一些操作的对比
1.原生JavaScript都是通过更改属性来实现
2.jQuery对象都是通过调用方法来实现
3.JavaScript是单独操作--如需批量操作需要借助for循环
4.jQuery是批量操作--如需单独设置,就确保其只有一个元素
 

九、jQuery对象的别名


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script src="js/jquery.js"></script>
        
        <script>
            //jqury对象的名字是: $  
            //jqury对象的名字是: jQuery
            alert($==jQuery);//true
            
            $("aa");
            jQuery("aa");
            //上述两行代码的意义一样,都表示获取aa元素
        </script>
    </body>
    </html>

  • 16
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值