jquery 第一章

时间:2023-03-08 23:09:45
jquery 第一章

1、本章目标
    了解jquery
    了解jquery和js的区别
    掌握jquery的入门
    掌握jquery对象和dom对象的区别
2、jquery简介
    jquery是一个轻量级的JavaScript函数库
    用于客户端浏览器
    核心功能:
        HTML元素选取和操作
        HTML事件函数
        css操作
        ajax
    jquery的优势:
        1、轻量级
        2、强大的选择器
        3、浏览器的兼容性比较好
        4、完善的ajax
        .........
3、jquery安装
    1、下载jquery的js文件
    2、在页面中引入jquery的js文件
    3、jquery的代码放在:
        $(document).ready(functioin(){
            //代码
        });
        $(function(){
            //代码
        });
        上述的两种写法的功能:类似于window.onload,初始化加载
        上述的两种写法的功能和window.onload区别:
            1、window.onload等页面所有内容加载完成后才会执行
                $(document).ready() 等页面结构加载完后才会执行
            2、window.onload若有多个,只会执行最后一个
                $(document).ready()若有多个,均被执行
4、jquery对象和dom对象
    dom对象:页面中所有的元素节点
    jquery对象:jquery对dom对象包装后产生的对象
        通常:$("#元素id")
    注意:dom对象和jquery对象不要混合使用
        比如:获取文本框的值
            js:value属性
            jquery:val()方法
5、jquery对象和dom对象的相互转换(了解)
    jquery对象转dom对象
        (1)jquery对象[下标]
        (2)jquery对象.get(下标)
        将jquery对象当做dom对象数组,通过下标的方式进行访问
    dom对象转jquery对象
        $(dom对象)
6、$的冲突问题
    jquery中封装了$符号,如果其他的框架也有$符号,可能会有冲突的问题
    解决方案1:
        jquery的引入没有先后顺序
            在jquery代码中第一行加入:jQuery.noConflict(); 表示释放jquery对象中的$
            比如:
                <script>
                    jQuery.noConflict(); //释放jquery中的$符号
                    jQuery(funcion(){
                        jQuery("p").css("color","red");
                    });
                </script>
    解决方案2:
        把jquery的引入放在最前面,再引入其他的框架
        比如:
            <script>
                jQuery(function(){
                    $("p").css("color","red");
                });
            </script>
    解决方案3:
        把jquery的引入放在最前面,在引入其他框架
        比如:
            //闭包
            (function($){
                $("p").css("color","red");
            })(jQuery);

本章代码

demo1

<html>
<head>
<script src="js/jquery-3.2.1.min.js"></script>
<script type="text/javascript">
//onload只会执行最后一个
window.onload = function(){
alert('1');
}
window.onload = function(){
alert('2');
} //两个都会被执行
$(document).ready(function(){
alert('3');
});
$(function(){
alert('4');
});
</script> </head>
<body> </body>
</html>

demo2

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<script src="js/jquery-3.2.1.min.js"></script>
<script> $(document).ready(function(){
//js获取文本框的值
//为btn按钮绑定单击事件
document.getElementById("btn").onclick = function(){
var v = document.getElementById("txt").value;
alert(v);
} //jquery获取文本框的值
//为btn按钮绑定单击事件
$("#btn").click(function(){
//通过jquery对象写法,获取文本框对象的值
var v = $("#txt").val();
alert(v)
});
}); </script>
</head>
<body>
<input type="text" id="txt" />
<input type="button" value="获取文本框的值" id="btn"/>
</body>
</html>

demo3

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<script src="js/jquery-3.2.1.min.js"></script>
<script> $(document).ready(function(){
document.getElementById("btn").onclick = function(){
//获取文本框的dom对象
var v = document.getElementById("txt");
//将dom对象转为jquery对象
var v2 = $(v);
var v3 = v2.val();
alert(v3)
} $("#btn").click(function(){
//获取文本框的jquery对象
var v = $("#txt");
//将jquery对象转为dom对象
var v2 = v.get(0); //v[0];
var v3 = v2.value;
alert(v3)
});
}); </script>
</head>
<body>
<input type="text" id="txt" />
<input type="button" value="获取文本框的值" id="btn"/>
</body>
</html>