认识DOM

文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法。DOM 将HTML文档呈现为带有元素、属性和文本的树结构(节点树)

把上面的代码进行分解就可以获得树状图:

HTML文档可以说由节点构成的集合,三种常见的DOM节点:

1. 元素节点:上图中<html>、<body>、<p>等都是元素节点,即标签。

2. 文本节点:向用户展示的内容,如<li>...</li>中的JavaScript、DOM、CSS等文本。

3. 属性节点:元素属性,如<a>标签的链接属性href="http://www.imooc.com"

观察局部细节:

  1. <a href="http://www.imooc.com">JavaScript DOM</a>


通过ID获取元素

学过HTML/CSS样式,都知道,网页由标签将信息组织起来,而标签的id属性值是唯一的,就像是每人有一个身份证号一样,只要通过身份证号就可以找到相对应的人。那么在网页中,我们通过id先找到标签,然后进行操作
语法:
  1. document.getElementById(“id”)

结果:null或[object HTMLParagraphElement]
注:获取的元素是一个对象,如想对元素进行操作,我们要通过它的属性或方法

innerHTML属性

innerHTML 属性用于获取或替换 HTML 元素的内容
语法:
  1. Object.innerHTML

注意:

1.Object是获取的元素对象,如通过document.getElementById("ID")获取的元素。

2.注意书写,innerHTML区分大小写

我们通过id="con"获取<p> 元素,并将元素的内容输出和改变元素内容


改变HTML样式

HTML DOM 允许 JavaScript 改变 HTML 元素的样式。如何改变 HTML 元素的样式呢?
语法:
  1. Object.style.property=new style;
注意:Object是获取的元素对象,如通过document.getElementById("id")获取的元素

基本属性表(property)
注意:该表只是一小部分CSS样式属性,其它样式也可以通过该方法设置和修改
举个栗子:
  1. <p id="pcon">Hello World!</p>
  2. <script>
  3. var mychar = document.getElementById("pcon");
  4. mychar.style.color="red";
  5. mychar.style.fontSize="20";
  6. mychar.style.backgroundColor ="blue";
  7. </script>

显示和隐藏(display属性)

网页中经常会看到显示和隐藏的效果,可通过display属性来设置
语法:
  1. Object.style.display = value
注意:Object是获取的元素对象,如通过document.getElementById("id")获取的元素

value取值

举个栗子:
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  5. <title>display</title>
  6. <script type="text/javascript">
  7. function hidetext()
  8. {
  9. var mychar = document.getElementById("con");
  10. mychar.style.display = "none";
  11. }
  12. function showtext()
  13. {
  14. var mychar = document.getElementById("con");
  15. mychar.style.display = "block";
  16. }
  17. </script>
  18. </head>
  19. <body>
  20. <h1>JavaScript</h1>
  21. <p id="con">做为一个Web开发师来说,如果你想提供漂亮的网页、令用户满意的上网体验,JavaScript是必不可少的工具。</p>
  22. <form>
  23. <input type="button" onclick="hidetext()" value="隐藏内容" />
  24. <input type="button" onclick="showtext()" value="显示内容" />
  25. </form>
  26. </body>
  27. </html>

控制类名(className属性)

className 属性设置或返回元素的class 属性
语法:
  1. object.className = classname

作用:

1.获取元素的class 属性

2. 为网页内的某个元素指定一个css样式来更改该元素的外观

举个栗子:
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  5. <title>className属性</title>
  6. <style>
  7. body{ font-size:16px;}
  8. .one{
  9. border:1px solid #eee;
  10. width:230px;
  11. height:50px;
  12. background:#ccc;
  13. color:red;
  14. }
  15. .two{
  16. border:1px solid #ccc;
  17. width:230px;
  18. height:50px;
  19. background:#9CF;
  20. color:blue;
  21. }
  22. </style>
  23. </head>
  24. <body>
  25. <p id="p1" > JavaScript使网页显示动态效果并实现与用户交互功能。</p>
  26. <input type="button" value="添加样式" onclick="add()"/>
  27. <p id="p2" class="one">JavaScript使网页显示动态效果并实现与用户交互功能。</p>
  28. <input type="button" value="更改外观" onclick="modify()"/>
  29. <script type="text/javascript">
  30. function add(){
  31. var p1 = document.getElementById("p1");
  32. p1.className="one";
  33. }
  34. function modify(){
  35. var p2 = document.getElementById("p2");
  36. p2.className="two";
  37. }
  38. </script>
  39. </body>
  40. </html>






























JS笔记 入门第三的更多相关文章

  1. JS笔记 入门第四

    小测试: 注意:取消所有的设定可以直接使用 document.getElementById("txt").removeAttribute("style"); 这 ...

  2. jQuery入门第三

    jQuery入门第三 1.HTML 2.CSS 衣服 3.javascript 可以动的人 4.DOM 编程 对html文档的节点操作 5.jQuery 对 javascript的封装 简练的语法 复 ...

  3. JavaMail入门第三篇 发送邮件

    JavaMail API中定义了一个java.mail.Transport类,它专门用于执行邮件发送任务,这个类的实例对象封装了某种邮件发送协议的底层实施细节,应用程序调用这个类中的方法就可以把Mes ...

  4. java入门第三步之数据库连接

    数据库连接可以说是学习web最基础的部分,也是非常重要的一部分,今天我们就来介绍下数据库的连接为下面学习真正的web打下基础 java中连接数据库一般有两种方式: 1.ODBC——Open Datab ...

  5. Html/Css(新手入门第三篇)

    一.学习心得---参考优秀的网页来学习. 1我们只做的静态网页主要用的技术?html+css 只要网上看到的,他的源代码公开的.[1].先去分析,他们页面是如何布局(结构化)[2].再试着去做一下,- ...

  6. java入门第三步之数据库连接【转】

    数据库连接可以说是学习web最基础的部分,也是非常重要的一部分,今天我们就来介绍下数据库的连接为下面学习真正的web打下基础 java中连接数据库一般有两种方式: 1.ODBC——Open Datab ...

  7. Android JNI入门第三篇——jni头文件分析

    一. 首先写了java文件: public class HeaderFile { private native void  doVoid(); native int doShort(); native ...

  8. Kotlin入门第三课:数据类型

    前文链接: Kotlin学习第一课:从对比Java开始 Kotlin入门第二课:集合操作 初次尝试用Kotlin实现Android项目 Kotlin的数据类型与Java类似,因此这篇文章主要看Kotl ...

  9. CTF---密码学入门第三题 奇怪的短信

    奇怪的短信分值:10 来源: Ayn 难度:易 参与人数:5117人 Get Flag:2623人 答题人数:2858人 解题通过率:92% 收到一条奇怪的短信: 335321414374744361 ...

随机推荐

  1. Temporary Post Used For Theme Detection (19f70e1d-5d8d-4c19-aef1-5b5a71ae0c47 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)

    This is a temporary post that was not deleted. Please delete this manually. (90462755-633b-4a0e-abb7 ...

  2. 自适应Cell

        // //  ViewController.m //  04-自适应cell // //  Created by 

  3. C#扩展方法的理解 (转)

    “扩展方法使您能够向现有类型“添加”方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型.” 这是msdn上说的,也就是你可以对String,Int,DataRow,DataTable等这些 ...

  4. 【转载】VS2010+VMWare8+VisualDDK1.5.6 创建并调试驱动程序 - 完全教程

    原帖:http://techird.blog.163.com/blog/static/1215640362011112385241568/ 本文描述了如何使用Visual Studio+VMMare+ ...

  5. hadoop笔记之MapReduce的应用案例(WordCount单词计数)

    MapReduce的应用案例(WordCount单词计数) MapReduce的应用案例(WordCount单词计数) 1. WordCount单词计数 作用: 计算文件中出现每个单词的频数 输入结果 ...

  6. drawable 另外一种形式dimens.xml

    常见的Drawable,放置默认drawable一系列目录,有时候会发现drawable找不到的情况,其实还可以放另外一个目录下 values------->>dimens.xml < ...

  7. JDBC连接数据库概述

    直接介绍JDBC连接数据库的流程及其原理 创建一个以JDBC连接数据库的程序,包含7个步骤 1.加载JDBC数据库驱动 在连接数据库之前,首先要加载想要连接的数据库的驱动,就是数据库厂商提供的jar包 ...

  8. asp.net mvc 注册中的邮箱激活功能实现(二)

    邮件发送功能封装 /// <summary>        /// 发送注册邮件        /// </summary>        /// <param name ...

  9. HTML5学习笔记之客户端存储数据方法:localStorage(),sessionStorage()

    HTML5提供了两种在客户端存储数据的新方法: localStorage():没有时间限制的数据存储 sessionStorage():针对一个session的数据存储 下面的一个例子用localSt ...

  10. android process bar 几种style

    process bar 圆形style记录 1. style="?android:attr/progressBarStyleSmall" //根据主题变颜色 2. holo 主题下 ...