JavaScript--Web APIs学习笔记(一)基础阶段+获取元素+操作元素

  • Web APIs与ECMAScript关联
  • API和Web API
  • 获取元素
  • 事件
  • 元素修改

目录

一、js基础阶段和Web APIs阶段

二、DOM基础——获取元素

1. 获取元素getElementByld获取带有ID的元素对象

2. getElementByTagName()获取某类标签元素

 3. 通过HTML5新增方法获取元素

4. 获取特殊元素(body、html)

三、事件基础

1. 事件由三部分(事件三要素)组成:事件源、事件类型、事件处理程序

2. 执行事件

3. 常见的鼠标事件

 四、操作元素

1. 改变元素内容

2. 操作元素——点击按钮,改变文本显示时间

 3. 操作元素——点击按钮改变图片(地址)

 4. 操作元素——表单属性操作


一、js基础阶段和Web APIs阶段

ECMAScript基础语法为后面做铺垫,Web APIs是js的应用,大量使用JS基础语法做交互效果。

Web APIs阶段学习DOM和BOM。

①BOM:Brower Object Model(浏览器对象模型),改变网页内容结构和样式

②DOM:Document Object Model(文档对象模型)

API(Application Programming Interface,应用程序接口)

Web API是浏览器提供的一套操作浏览器功能和页面元素的API(BOM,DOM)

MDN详细API:https://developer.mozilla.org/zh-CN/docs/Web/API

二、DOM基础——获取元素

1. 获取元素getElementByld获取带有ID的元素对象

返回一个匹配特定ID的元素对象,由于元素的 ID 在大部分情况下要求是独一无二的(ID大小写敏感),这个方法自然而然地成为了一个高效查找特定元素的方法。

    <div id = 'time'>2022-4-7</div>
    <script>
        //get获取element元素,通过by,ID方法
        timer = document.getElementById('time');
        console.log(timer);
        console.dir(timer);//console.dir返回的是元素对象,更好查看里面的属性和方法
    </script>

2. getElementByTagName()获取某类标签元素

document.getElementByTagName()得到的列表是伪数组,返回的是获取元素对象的集合

例一:获取标签li

    <ul>
        <li>哈哈,标签1</li>
        <li>哈哈,标签2</li>
        <li>哈哈,标签3</li>
        <li>哈哈,标签4</li>
    </ul>
    <script>
        var lis = document.getElementsByTagName('li');
        console.log(lis);
        console.log(lis[0]);
    </script>

例二:获取指定副标签下的子标签

        var ol = document.getElementsByTagName('ol');
        console.log(ol[0].getElementsByTagName('li'))
    <ul>
        <li>哈哈,标签1</li>
        <li>哈哈,标签2</li>
        <li>哈哈,标签3</li>
        <li>哈哈,标签4</li>
    </ul>
    <ol id="ol">
        <li>另外标签</li>
        <li>另外标签</li>
        <li>另外标签</li>
    </ol>
    <script>
        var lis = document.getElementsByTagName('li');
        console.log(lis);
        console.log(lis[0]);
        // var ol = document.getElementsByTagName('ol');
        // console.log(ol[0].getElementsByTagName('li'))

        var ol = document.getElementById('ol');
        console.log(ol.getElementsByTagName('li'));     
    </script>

 3. 通过HTML5新增方法获取元素

getElementsByClassName('类名'),根据类名获取某些元素集合

querySelector('选择器')  根据指定选择器返回第一个元素对象,里面选择器需要加符号 .class,#id

querySelectorAll('选择器')返回指定选择器的所有对象集合

    <div class="box">盒子1</div>
    <div class="box">盒子2</div>
    <div id="nav">
        <ul>
            <li>产品1</li>
            <li>产品2</li>
        </ul>
    </div>
    <script>
        var boxes = document.getElementsByClassName('box');
        var firstBox = document.querySelector('.box');
        var nav = document.querySelector('#nav');
        var li = document.querySelector('li');
        var allBox = document.querySelectorAll('All.box');//这里和getElementsByClassName('box')相似
        var lis = document.querySelectorAll('li');

        console.log(boxes);
        console.log(firstBox);
        console.log(nav);
        console.log(li);
        console.log(allBox);
        console.log(lis);
    </script>

4. 获取特殊元素(body、html)

①获取body元素

document.body  //返回body元素对象

②获取html元素

document.documentElement     //返回html元素对象

三、事件基础

1. 事件由三部分(事件三要素)组成:事件源、事件类型、事件处理程序

(1)事件源:事件被触发的对象

(2)事件类型:如何触发、什么事件,如鼠标点击(onclick)或者鼠标经过

(3)事件处理程序:通过一个函数赋值触发

<body>
    <button id="btn">事件源:小明</button>
    <script>
        var btn = document.getElementById('btn');//
        btn.onclick = function(){
            alert('去学习');
        }
    </script>
</body>

2. 执行事件

(1)获取事件源

(2)绑定事件、注册事件

(3)添加事件处理程序

    <div>123</div>
    <script>
        var div = document.querySelector('div');
        div.onclick = function(){
            console.log('123被选中了');
        }

    </script>

3. 常见的鼠标事件

鼠标事件触发条件

onclick

鼠标点击左键触发
onmouseover鼠标经过出发
onmouseout鼠标离开出发
onfocus获得鼠标焦点触发
onblur失去鼠标焦点出发
onmousemove鼠标移动出发
mouseup

鼠标弹起触发

onmousedown鼠标按下触发

 四、操作元素

1. 改变元素内容

element.innerText:从起始位置到终止位置的内容,但它去除html标签,同时空格和换行也会去掉

element.innerHTML:起始位置到终止位置的全部内容,包括html标签,同时保留空格和换行

区别:

    <div id="div3"></div>
    <div id="div4"></div>
    <p id="p2">
        p标签里面
        <span>123</span>
    </p>
    <script>
        //innerText不识别html标签
        var div3 = document.querySelector('#div3');
        var div4 = document.querySelector('#div4');
        div3.innerText = '<strong> 今年</strong>2022';
        div4.innerHTML = '<strong> 今年</strong>2022';
        var p2 = document.querySelector('#p2');
        console.log(p2.innerHTML);
        console.log(p2.innerText);
    </script>

 

2. 操作元素——点击按钮,改变文本显示时间

    <button id="btn2">显示当前时间</button>
    <div id="div2">某个时间</div>
    <script>
        //获取元素
        var btn2 = document.querySelector('#btn2');
        var div2 = document.querySelector('#div2');
        //注册事件
        btn2.onclick = function(){
            // div2.innerText = '2022-4-7';
            div2.innerText = getDate();

        }
        function getDate(){
            var date = new Date();
            var year = date.getFullYear();
            var month = date.getMonth()+1;
            var dates = date.getDate();
            return '今天'+year+'年'+month+'月'+dates+'日';
            // return date;
        }
    </script>

 

 3. 操作元素——点击按钮改变图片(地址)

    <button id="img1">图片一</button>
    <button id="img2">图片二</button>
    <img src="D:\image\img1.jpg" alt="" id="img">
    <script>
        var img1=document.getElementById('img1');
        var img2=document.querySelector('#img2');
        var img=document.querySelector('#img');
        img1.onclick = function(){
            img.src='D:/image/img1.jpg';
            img.title='图片一-粉色云'
        }
        img2.onclick = function(){
            img.src='D:/image/img2.jpg';
            img.title='图片二-动漫图'
        }
    </script>

 4. 操作元素——表单属性操作

利用DOM可以操作如下表单的属性:

type、value、checked、selected、disabled

表单里面的值(文字内容)是通过value来修改的

    <!-- 表单属性操作 -->
    <br>
    <button id="btn3">点击按钮</button>
    <input type="text" value="输入内容">
    <script>
        var btn3=document.querySelector('#btn3');
        var input=document.querySelector('input');
        btn3.onclick=function(){
            // input.innerHTML='点击了';//不生效,因为表单里面值是用value来修改的
            input.value = '被点击了';
            // btn3.disabled = true;
            this.disabled = true;//作用相同,this只想的调用的btn3
        }
    </script>

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: Auto-generated Google APIs是指通过Google提供的API生成的自动化代码。这些API可以用于访问和使用Google的各种服务,如地图、路线规划等。在使用这些API之前,需要根据具体需求生成相应的代码,并按照API文档提供的方式进行调用和集成。引用\[1\]中的代码示例展示了如何使用Google Maps的Directions API获取两个地点之间的路线信息。引用\[2\]中的代码示例展示了如何通过钉钉机器人发送消息来展示构建过程中的状态。引用\[3\]中的内容提到了在Jenkins中安装和配置Kubernetes插件的过程。 #### 引用[.reference_title] - *1* [java - 在谷歌地图android中查找两个坐标之间的道路距离 - SO中文参考 - www.soinside.com](https://blog.csdn.net/weixin_31642531/article/details/117475933)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [kubuadm搭建](https://blog.csdn.net/moon_naxx/article/details/120962211)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值