Python系统学习-14

7-常用内置对象

7.1-数组常用方法

数组常用方法

7.2-字符串方法

这里写图片描述

7.3-Date日期对象

这里写图片描述

7.4-Math 内置对象

这里写图片描述

8-函数

8.1-第一步:函数的定义

function 函数名字(形参){
}

8.2-第二步:函数的调用

函数名字();

9-伪数组 arguments

10-关于DOM的事件操作

10.1-JavaScript的组成

JavaScript基础分为三个部分:

  • ECMAScript:JavaScript的语法标准。包括变量、表达式、运算符、函数、if语句、for语句等。
  • DOM:文档对象模型,操作网页上的元素的API。比如让盒子移动、变色、轮播图等。
  • BOM:浏览器对象模型,操作浏览器部分功能的API。比如让浏览器自动滚动。

10.2-事件

  • JS是以事件驱动为核心的一门语言。
  • 事件的三要素:事件源、事件、事件驱动程序。

代码书写步骤如下:(重要)

-(1)获取事件源:document.getElementById(“box”); //类似与ios语言的 UIButton *adBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- (2)绑定事件: 事件源box.事件onclick = function(){ 事件驱动程序 };
-(3)书写事件驱动程序:关于DOM的操作

常见事件如下
这里写图片描述

下面针对这事件的三要素,进行分别介绍:

10.2.1-获取事件源的方式(DOM节点的获取)

获取事件源的常见方式如下:

var div1 = document.getElementById("box1");      //方式一:通过id获取单个标签

var arr1 = document.getElementsByTagName("div1");     //方式二:通过 标签名 获得 标签数组,所以有s

var arr2 = document.getElementsByClassName("hehe");  //方式三:通过 类名 获得 标签数组,所以有s

10.2.2-绑定事件的方式

方式一:直接绑定匿名函数

<div id="box1" ></div>

<script type="text/javascript">
    var div1 = document.getElementById("box1");
    //绑定事件的第一种方式
    div1.onclick = function () {
        alert("我是弹出的内容");
    }
</script>

方式二:先单独定义函数,再绑定

<div id="box1" ></div>

<script type="text/javascript">
    var div1 = document.getElementById("box1");
    //绑定事件的第二种方式
    div1.onclick = fn;   //注意,这里是fn,不是fn()。fn()指的是返回值。
    //单独定义函数
    function fn() {
        alert("我是弹出的内容");
    }
</script>

方式三:行内绑定

<!--行内绑定-->
<div id="box1" onclick="fn()"></div>

<script type="text/javascript">

    function fn() {
        alert("我是弹出的内容");
    }

</script>

10.2.4-事件驱动程序

onload事件

  • 当页面加载(文本和图片)完毕的时候,触发onload事件。
  • js的加载是和html同步加载的。因此,如果使用元素在定义元素之前,容易报错。这个时候,onload事件就能派上用场了,我们可以把使用元素的代码放在onload里,就能保证这段代码是最后执行。建议是:整个页面上所有元素加载完毕在执行js内容。所以,window.onload可以预防使用标签在定义标签之前。
<script type="text/javascript">
    window.onload = function () {
        console.log("小马哥");  //等页面加载完毕时,打印字符串
    }
</script>

11-DOM介绍

目的其实就是为了能让js操作html元素而制定的一个规范。DOM就是由节点组成的。

解析过程

HTML加载完毕,渲染引擎会在内存中把HTML文档,生成一个DOM树,getElementById是获取内中DOM上的元素节点。然后操作的时候修改的是该元素的属性。

DOM树(一切都是节点)
DOM的数据结构如下:
这里写图片描述

  • 上图可知,在HTML当中,一切都是节点:(非常重要)
  • 元素节点:HMTL标签。
  • 文本节点:标签中的文字(比如标签之间的空格、换行)
  • 属性节点::标签的属性。
  • 整个html文档就是一个文档节点。所有的节点都是Object。

DOM可以做什么

  • 找对象(元素节点)
  • 设置元素的属性值
  • 设置元素的样式
  • 动态创建和删除元素
  • 事件的触发响应:事件源、事件、事件的驱动程序

DOM访问关系的获取
DOM的节点并不是孤立的,因此可以通过DOM节点之间的相对关系对它们进行访问。如下:
这里写图片描述

节点的访问关系,是以属性的方式存在的。
JS中的父子兄访问关系:
这里写图片描述
这里我们要重点知道parentNode和children这两个属性的用法。下面分别介绍。

获取父节点
节点.parentNode

11.1-DOM节点操作(重要)

节点的操作都是函数(方法)

创建节点
格式如下:

新的标签(元素节点) = document.createElement("标签名");

插入节点
插入节点有两种方式,它们的含义是不同的。

方式1:

父节点.appendChild(新的子节点);
解释:父节点的最后插入一个新的子节点。

方式2:

父节点.insertBefore(新的子节点,作为参考的子节点);
解释:

在参考节点前插入一个新的节点。
如果参考节点为null,那么他将在父节点最后插入一个子节点。

删除节点
格式如下:

父节点.removeChild(子节点);
解释:用父节点删除子节点。必须要指定是删除哪个子节点。

如果我想删除自己这个节点,可以这么做:

node1.parentNode.removeChild(node1);

复制节点(克隆节点)
格式如下:

要复制的节点.cloneNode(); //括号里不带参数和带参数false,效果是一样的。

要复制的节点.cloneNode(true);
括号里带不带参数,效果是不同的。解释如下:

不带参数/带参数false:只复制节点本身,不复制子节点。

带参数true:既复制节点本身,也复制其所有的子节点。

猜你喜欢

转载自blog.csdn.net/weixin_41765871/article/details/81842790
今日推荐