JavaScript(下)

BOM

浏览器对象模型

screen

浏览器屏幕尺寸

screen.height
768px
screen.width
1366px

location

当前页面URL信息

host: "www.baidu.com"
hostname: "www.baidu.com"
href: "https://www.baidu.com/"
origin: "https://www.baidu.com"

location.assign("https://www.bilibili.com/")	//跳转页面

document

当前页面Html信息

//获取具体文档树节点
<dl id="app">
    <dt>ca</dt>
    <dd>csac</dd>
</dl>
<script>
    'use strict';
    document.getElementById('app');
</script>
document.cookie		//获取cookie

history

浏览器历史记录(不建议使用)

history.back()			//返回上一个页面
history.forward()		//前进下一个页面

DOM

文档对象模型

浏览器页面是一个DOM树形结构

操作DOM的作用:

获得DOM节点

<body>
    <div id="father">
        <ul class="ul">
            <li></li>
            <li></li>
            <li></li>
        </ul>
    </div>
    <script>
        var father = document.getElementById("father");		//根据id查找节点
        var ul = document.getElementsByClassName("ul");		//根据class查找节点
        var li = document.getElementsByTagName("li");		//根据标签查找节点
    </script>
</body>

更新DOM节点

innerText='';	//修改文本值
修改节点的属性,css操作

删除DOM节点

<body>
    <div id="father">
        <h1>h1</h1>
        <p id="p1">p1</p>
        <p class="p2">p2</p>
    </div>
    <script>
        //获取要删除的节点
        var self = document.getElementById('p1');
        //获取节点的父类
        var father = p1.parentElement;
        //使用父类移除子节点
        father.removeChild(p1);
        //father.removeChild(father.children[0]);
    </script>
</body>

变更DOM节点位置

<body>
    <p id="p1">p1</p>
    <div id="div1">
        <p id="p2">p2</p>
        <p id="p3">p3</p>
        <p id="p4">p4</p>
    </div>
    <script>
        var p1 = document.getElementById('p1');
        var div1 = document.getElementById('div1');
        div1.appendChild(p1);
    </script>
</body>

创建节点

<body>
    <div id="div1">
        <p id="p1">p1</p>
        <p id="p2">p2</p>
    </div>
    <script>
        var p1 = document.getElementById('p1');
        var div1 = document.getElementById('div1');
        var newP = document.createElement('p');
        newP.id = 'p3';
        newP.innerText = 'p3';
        div1.appendChild(newP);
    </script>
</body>

操作表单

<body>
    <form action="#">
        <input type="text" id="text">
        <p>
            <input type="radio" class="sex" id="boy"><input type="radio" class="sex" id="girl"></p>
    </form>
    <script>
        var text = document.getElementById('text');
        text.value = 'wenbenkuang';       //给文本框赋值
        text.value;                       //获得文本框赋值
        var boy = document.getElementById('boy');
        var girl = document.getElementById('girl');
        boy.checked;            //获得单选框的值
        girl.checked = true;    //给单选框赋值
    </script>
</body>

提交表单

<body>
    <form action="#" method="post">
        <p>
            <span>用户名:</span><input type="text" id="user">
        </p>
        <p>
            <span>密码:</span><input type="password" id="password">
        </p>
        <!--绑定事件:被点击-->
        <button type="button" onclick="s()">提交</button>
    </form>
    <script>
        function s() {
            var uname = document.getElementById('user');
            var pwd = document.getElementById('password');
            console.log(uname.value);
            pwd.value = md5(pwd.value);		//md5加密
        }
    </script>
</body>

隐藏加密后的密码

<body>
    <form action="#" method="post">
        <p>
            <span>用户名:</span><input type="text" id="user">
        </p>
        <p>
            <span>密码:</span><input type="password" id="input-password">
        </p>
        <p>
            <input type="hidden" id="password">
        </p>
        <button type="button" onclick="s()">提交</button>
    </form>
    <script>
        function s() {
            var uname = document.getElementById('user');
            var password = document.getElementById('input-password');
            var pwd = document.getElementById('password');
            pwd.value = md5(password.value);
        }
    </script>
</body>

表单绑定提交事件

<body>
    <!--绑定事件:提交表单-->
    <form action="https://www.baidu.com/" method="post" onsubmit="return s()">
        <button type="submit">提交</button>
    </form>
    <script>
        function s() {
            return false;		//返回false将阻止表单提交,注意οnsubmit="return s()"
        }
    </script>
</body>

jQuery

工具文档:https://jquery.cuishifeng.cn/

引入jQuery

<script  src="https://lib.baomitu.com/jquery/3.5.1/jquery.js"></script>
//或者去官网下载

公式

$('选择器').事件
选择器参考css选择器,
事件一般是click(function () {})。

<body>
    <a href="" id="a">这是一个链接</a>
    <script>
        $('#a').click(function () {
            alert('1');
        })
    </script>
</body>

事件

//文档加载完后进行事件
$(document).ready(function () {
    alert('1ssdf');
})
//简化
$(function () {
    alert('1ssdf');
})
  1. 查看鼠标位置

    <head>
        <script  src="https://lib.baomitu.com/jquery/3.5.1/jquery.js"></script>
        <style>
            #divMove{
                width: 300px;
                height: 300px;
                border: 1px solid red;
            }
        </style>
    </head>
    <body>
        mouse:<span id="mouseMove"></span>
        <div id="divMove">
            在这里移动鼠标
        </div>
        <script>
            $('#divMove').mousemove(function (e) {
                $('#mouseMove').text('x:'+e.pageX+'y:'+e.pageY);
            })
        </script>
    </body>
    
  2. 元素失去焦点时触发 blur 事件。

    <body>
        <input type="text">
        <script>
            $("input").blur(function () {
                alert("Hello World!");
            });
        </script>
    </body>
    //点击输入框内部再点击输入框外部将触发事件
    
  3. 元素的值发生改变发生 change 事件。

    <body>
        <input type="text">
        <script>
            $("input[type='text']").change( function() {
                alert('adav');
            });
        </script>
    </body>
    //当改变输入框内的值然后点回车,会触发事件
    
  4. 单击触发click事件

    <body>
        <input type="button" value="这是一个按钮">
        <script>
            $("input").click( function() {
                alert('adav');
            });
        </script>
    </body>
    //单击按钮触发事件
    
  5. 双击触发dblclick事件

    <body>
        <input type="button" value="这是一个按钮">
        <script>
            $("input").dblclick( function() {
                alert('adav');
            });
        </script>
    </body>
    //双击按钮触发事件
    
  6. 元素获得焦点触发 focus 事件。

    <body>
    <input type="text">
    <script>
        $("input[type=text]").focus(function(){
            alert('a');
            //this.blur();
        });
    </script>
    </body>
    //点击输入框触发事件。
    //this.blur();可以使输入框看得见但无法使用
    
  7. 当键盘或按钮被按下时,发生 keydown 事件。

    <body>
        <script>
            $(window).keydown(function(event){
                alert('afada')
            });
        </script>
    </body>
    
  8. 当鼠标指针移动到元素上方,并按下鼠标按键时,会发生 mousedown 事件。

    <head>
        <script src="https://lib.baomitu.com/jquery/3.5.1/jquery.js"></script>
        <style>
            p{
                width: 500px;
                height: 500px;
                border: 1px solid red;
            }
        </style>
    </head>
    <body>
        <p></p>
        <script>
            $('p').mousedown(function(event){
                alert('afada')
            });
        </script>
    </body>
    
  9. 当鼠标指针离开元素时,会发生 mouseleave 事件。

    <head>
        <script src="https://lib.baomitu.com/jquery/3.5.1/jquery.js"></script>
        <style>
            p{
                width: 500px;
                height: 500px;
                border: 1px solid red;
            }
        </style>
    </head>
    <body>
        <p></p>
        <script>
            $("p").mouseleave(function(){
                $("p").css("background-color","#FF0000");
            });
        </script>
    </body>
    
  10. 当鼠标指针经过元素时,会发生 mouseenter 事件。

    <head>
        <script src="https://lib.baomitu.com/jquery/3.5.1/jquery.js"></script>
        <style>
            p{
                width: 500px;
                height: 500px;
                border: 1px solid red;
            }
        </style>
    </head>
    <body>
        <p></p>
        <script>
            $("p").mouseenter(function(){
                $("p").css("background-color","#FF0000");
            });
        </script>
    </body>
    //一般会与鼠标离开事件联用
    
  11. 当调整浏览器窗口的大小时,发生 resize 事件。

    <body>
        <script>
            $(window).resize(function(){
                alert("Stop it!");
            });
        </script>
    </body>
    

操作DOM

<body>
    <div id="d1">
        <p name = "p1">dnafndnan</p>
    </div>
    <script>
        /*可以用标签[属性="值"]来定位元素*/
        $('#d1 p[name="p1"]').text();	//获得值
        $('p').text('snjanskjcn');		//设置值
        $('p').html();					//获得html
        $('p').html('<p>p</p>');		//添加html
        $('p').css('color','red');		//设置css样式
        $('p').show();					//显示元素
        $('p').hide();					//隐藏元素
        $("p").hide("slow");			//缓慢隐藏
    </script>
</body>
weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值