JavaScript回炉重造

Posted ZSYL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript回炉重造相关的知识,希望对你有一定的参考价值。

获取标签元素

学习目标

  • 能够写出获取标签元素的操作

1. 获取标签元素

可以使用 **内置对象 document **上的 getElementById
方法
来获取页面上设置了id属性的标签元素,获取到的是一个html对象,然后将它赋值给一个变量,比如:

<script type="text/javascript">
    var oDiv = document.getElementById('div1');
    alert(oDiv);
</script>
<div id="div1">这是一个div元素</div>

说明:

上面的代码,如果把javascript写在元素的上面,就会出错,因为页面上从上往下加载执行的,javascript去页面上获取元素div1的时候,元素div1还没有加载。

解决方法有两种:

第一种方法:将javascript放到页面最下边

<div id="div1">这是一个div元素</div>

<script type="text/javascript">
    var oDiv = document.getElementById('div1');
    alert(oDiv);
</script>

第二种方法:设置页面加载完成执行的函数,在执行函数里面获取标签元素。

<script type="text/javascript">
    window.onload = function()
        var oDiv = document.getElementById('div1');
    
</script>

说明:

onload是页面所有元素加载完成的事件,给onload设置函数时,当事件触发就会执行设置的函数。

2. 小结

  • 获取标签元素需要等待页面加载完成,使用 document.getElementById( '标签id');

操作标签元素属性

学习目标

  • 能够知道获取和设置标签元素属性

1. 属性的操作

首先获取的页面标签元素,然后就可以对页面标签元素的属性进行操作,属性的操作包括:

  • 属性的读取
  • 属性的设置

属性名在js中的写法

  1. html的属性和js里面属性大多数写法一样,但是"class" 属性写成 “className”
  2. “style” 属性里面的属性,有横杠的改成驼峰式,比如:“font-size”,改成"style.fontSize"
<style>
    .sty01
        font-size:20px;
        color:red;
    
    .sty02
        font-size:30px;
        color:pink;
        text-decoration:none;
    

</style>

<script type="text/javascript">

    window.onload = function()
        var oInput = document.getElementById('input1');
        var oA = document.getElementById('link1');
        // 读取属性值
        var sValue = oInput.value;
        var sType = oInput.type;
        var sName = oInput.name;
        var sLinks = oA.href;

        // 操作class属性,需要写成"className"
        oA.className = 'sty02';

        // 写(设置)属性
        oA.style.color = 'red';
        oA.style.fontSize = sValue;
    

</script>

<input type="text" name="setsize" id="input1" value="20px">
<a href="#" id="link01" class="sty01">这是一个链接</a>

2. innerHTML

innerHTML可以读取或者设置标签包裹的内容

<script type="text/javascript">
    window.onload = function()
        var oDiv = document.getElementById('div1');
        //读取
        var sTxt = oDiv.innerHTML;
        alert(sTxt);
        //写入
        oDiv.innerHTML = '<a href="http://www.itcast.cn">传智播客<a/>';
    
</script>

<div id="div1">这是一个div元素</div>

3. 小结

标签属性的获取和设置:

  1. var 标签对象 = document.getElementById(‘id名称’); -> 获取标签对象
  2. var 变量名 = 标签对象.属性名 -> 读取属性
  3. 标签对象.属性名 = 新属性值 -> 设置属性

数组及操作方法

学习目标

  • 能够根据下标删除指定元素

1. 数组的介绍

数组就是一组数据的集合,javascript 中,数组里面的数据可以是不同类型的数据,好比 python 里面的列表。

2. 数组的定义

// 实例化对象方式创建
var aList = new Array(1,2,3);

// 字面量方式创建,推荐使用
var aList2 = [1,2,3,'asd'];

3. 多维数组

多维数组指的是数组的成员也是数组,把这样的数组叫做多维数组。

var aList = [[1,2,3],['a','b','c']];

4. 数组的操作

1、 获取数组的长度

var aList = [1,2,3,4];
alert(aList.length); // 弹出4

2、 根据下标取值

var aList = [1,2,3,4];
alert(aList[0]); // 弹出1

3、 从数组最后添加和删除数据

 var aList = [1,2,3,4];
 aList.push(5);
 alert(aList); //弹出1,2,3,4,5
 aList.pop();
 alert(aList); // 弹出1,2,3,4

4、根据下标添加和删除元素

arr.splice(start,num,element1,.....,elementN)

参数解析:

  1. start:必需,开始删除的索引。

  2. num:可选,删除数组元素的个数。

  3. elementN:可选,在start索引位置要插入的新元素。

此方法会删除从start索引开始的num个元素,并将elementN参数插入到start索引位置。

var colors = ["red", "green", "blue"];
colors.splice(0,1);  //删除第一项
alert(colors);  //green,blue

colors.splice(1, 0, "yellow", "orange");  //从第一个索引位置插入两项数据
alert(colors);  //green,yellow,organge,blue

colors.splice(1, 1, "red", "purple");  //删除一项,插入两项数据
alert(colors);  //green,red,purple,orange,blue

5. 小结

  • 数组的定义使用一对中括号
  • 获取数组的长度使用length属性
  • 从数组最后添加元素使用push方法
  • 从数组最后删除元素使用pop方法
  • 根据下标添加和删除元素使用splice方法

加油!

感谢!

努力!

以上是关于JavaScript回炉重造的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript回炉重造

回炉重造JQuery 入门教程

回炉重造JQuery 获取和设置元素内容/属性

回炉重造之重读Windows核心编程-006-线程

回炉重造之 nginx

Vue回炉重造之router路由