JavaScript

  [1]事件

    ①用户操作网页或者浏览器所发生的交互行为称为事件。比如:点击按钮,最小化窗口,修改文本框内容等。

    ②JS为我们定义许多浏览器中的事件。比如:单击(onclick)、双击(ondblclick)、移动(onmousemove) 等。

    ③我们可以通过为事件设置一个响应函数来对事件进行响应:

 <body>
<button id="btn">按钮</button>
</body> <script type="text/javascript">
//获取到按钮的对象
var btn = document.getElementById("btn");
//为btn绑定一个单击响应函数
btn.onclick = function(){
alert("hello World!");
};
</script>

  [2]加载方式

    ①浏览器加载网页代码时是由上到下依次加载的。

    ②如果我们在浏览器还尚未加载网页中的元素,那么将无法确定,控制台将会报错,解决该问题有两种方式:

      1) 将JS代码编写到body标签的下边。但是我们习惯上将JS、CSS等代码都写在head标签中。这种形式不符合使用习惯。

      2) 将js代码编写到window.onload = function(){}中。推荐的使用方式。(ps:在编写js代码的时候最好开始的时候就将window.onload = function(){}写上)。

  [3]DOM编程

    DOM全称:Document Object Model。

    DOM主要是通过JavaScript来控制网页中的各种元素,从而达到使网页可以和用户进行动态交互的作用。

    DOM的操作主要分四部分增、删、改、查。   

    节点类型:
      - 元素节点
      - 文本节点
      - 属性节点

    ①DOM查询

      1) 通过document对象查询:

        document.getElementById(id);  ---> 通过id获取一个元素节点对象.   

        document.getElementsByTagName(标签名); ---> 通过标签名获取一组元素节点对象.

        document.getElementsByName(name属性); --->通过name属性获取一组元素节点对象,一般用来获取表单项. 

      2) 通过具体的元素对象查询:

        element.getElementsByTagName(标签名); --->查找当前元素节点内指定标签名的子节点

        element.childNodes; --->获取当前节点的所有子节点.

        element.parentNode; --->获取当前节点的父节点.

      3) 获取元素的属性:

        获取  :  元素.属性名

        设置  : 元素.属性名 = 属性值;

      4)this:

        this指向的是当前函数的所属对象。

    DOM的增删改:   

      1) 创建元素节点:document.createElement(标签名);

      2) 创建文本节点: document.createTextNode(文本值);

      3) 添加子节点: 父节点.appendChild(子节点);

      4) 插入节点: 父节点.insertBefore(新节点,旧节点);

      5) 替换节点: 父节点.replaceChild(新节点,旧节点);

      6) 删除节点: 父节点.removeChild(子节点); / 子节点.parentNode.removeChild(子节点) *****

      7) 读写元素内部HTML代码

        读取: 元素.innerHTML

        设置: 元素.innerHTML = 新值
        

    

    

后端Java工程师常用JavaScript_DOM的更多相关文章

  1. Java工程师常用Linux命令

    本文所列的Linux常用命令包含:文件相关(目录操作,内容查看,查找与比较,压缩与解压),进程管理,网络操作,系统管理,性能监测与优化,Java常用工具多个方面概述. 文件目录基本操作 ls 命令用来 ...

  2. 我最推荐的一张Java后端学习路线图,Java工程师必备

    前言 学习路线图往往是学习一样技术的入门指南.网上搜到的Java学习路线图也是一抓一大把. 今天我只选一张图,仅此一图,足以包罗Java后端技术的知识点.所谓不求最好,但求最全,学习Java后端的同学 ...

  3. 《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》

    <菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...

  4. 原创电子书《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》

    <菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...

  5. Java工程师学习指南(入门篇)

    Java工程师学习指南 入门篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...

  6. Java工程师学习指南(初级篇)

    Java工程师学习指南 初级篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...

  7. Java工程师学习指南(中级篇)

    Java工程师学习指南 中级篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我写的文章都是站 ...

  8. Java工程师学习指南(完结篇)

    Java工程师学习指南 完结篇 先声明一点,文章里面不会详细到每一步怎么操作,只会提供大致的思路和方向,给大家以启发,如果真的要一步一步指导操作的话,那至少需要一本书的厚度啦. 因为笔者还只是一名在校 ...

  9. Java后端开发工程师是否该转大数据开发?

    撰写我对java后端开发工程师选择方向的想法,写给在java后端选择转方向的人 背景 看到一些java开发工程师,对java后端薪酬太悲观了.认为换去大数据领域就会高工资.觉得java后端没有前途.我 ...

随机推荐

  1. Bluemix中国版体验(二)

    从上一篇到现在大概有一个多月了.时隔一个月再登录中国版Bluemix,发现界面竟然更新了,现在的风格和国际版已经基本保持一致!这次我们来体验一下Mobile Service.不过mobile serv ...

  2. 值得收藏!国外最佳互联网安全博客TOP 30

    如果你是网络安全从业人员,其中重要的工作便是了解安全行业的最新资讯以及技术趋势,那么浏览各大安全博客网站或许是信息来源最好的方法之一.最近有国外网站对50多个互联网安全博客做了相关排名,小编整理其中排 ...

  3. 小丁是怎样入门git的

    0x01前言 既然没有华丽的出场,那就平凡的分享,首先我要说明一点本篇文章针对Git初学者,对我自己学Git的资源的整合,其实本篇索引应该在我写Git系列文章的时候就紧跟着放上索引的,由于时间问题没有 ...

  4. 速算1/Sqrt(x)背后的数学原理

    概述 平方根倒数速算法,是用于快速计算1/Sqrt(x)的值的一种算法,在这里x需取符合IEEE 754标准格式的32位正浮点数.让我们先来看这段代码: float Q_rsqrt( float nu ...

  5. 创建一个Phone实体,完成多页面的电话簿项目

    添加实体 在类库CORE中添加: [Table("PbPhones")] public class Phone : CreationAuditedEntity<long> ...

  6. ABP源码分析二十一:Feature

    Feature是什么?Feature就是对function的分类方法,其与function的关系就比如Role和User的关系一样. ABP中Feature具有以下属性: 其中最重要的属性是name, ...

  7. ABP源码分析二十四:Notification

    NotificationDefinition: 用于封装Notification Definnition 的信息.注意和Notification 的区别,如果把Notification看成是具体的消息 ...

  8. ABP框架 - 会话

    文档目录 本节内容: 简介 关于 IAbpSeesion 注入会话 会话属性 用户标识符 简介 如果一个应用需要登录,它就需要知道当前用户在执行的操作.尽管Asp.net自身在展现层提供了Sessio ...

  9. 计算机人物系列-Mauchly,Eckert,Goldstine

    关键词:莫尔学院(Moore School),阿伯丁试验场(Aberdeen Proving Ground), 雷明顿兰德公司(Remington Rand Corporation), IBM院士(I ...

  10. Android线程管理之ThreadPoolExecutor自定义线程池

    前言: 上篇主要介绍了使用线程池的好处以及ExecutorService接口,然后学习了通过Executors工厂类生成满足不同需求的简单线程池,但是有时候我们需要相对复杂的线程池的时候就需要我们自己 ...