认识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. 蓝桥杯算法训练<一>

    一.图形显示 此题虽然简单,但是需啊哟注意的是,每个“*”后边有一个空格] 问题描述 编写一个程序,首先输入一个整数,例如5,然后在屏幕上显示如下的图形(5表示行数): * * * * * * * * ...

  2. jboss清楚缓存

    在服务器上部署或更新时,常常会忘记删除JBOSS的缓存.忘记删除缓存的后果,经常就是改好了代码却还是原来的错误,然后查找半天,浪费时间.所以在重新部署JBOSS,在启动JBOSS前一定要删除JBOSS ...

  3. @Resource注解(转)

    @Resource 注解被用来激活一个命名资源(namedresource)的依赖注入,在JavaEE应用程序中,该注解被典型地转换为绑定于JNDI context中的一个对象.Spring确实支持使 ...

  4. unix网络编程笔记

    TCP连接状态转换图:

  5. iOS定位与地图

    定位: 手机上定位的实现主要有三种方式:基站(附近基站的位置),wifi(所连接路由器的位置),卫星(最准确,也最耗能). iOS的定位功能主要是由CLLocationManager类来完成的.这个类 ...

  6. JavaWeb核心编程之使用Eclipse开发JavaWEB项目

    文章目录 1.eclipse切换到javaee项目 2.创建服务器(如果没有server选项, 怎么做) 3.定制新建面板内容 4.创建动态web工程 1.eclipse切换到javaee项目 如图 ...

  7. ACM大数模板(支持正负整数)

    之前就保留过简陋的几个用外部数组变量实现的简单大数模板,也没有怎么用过,今天就想着整合封装一下,封装成C++的类,以后需要调用的时候也方便得多. 实现了基本的加减乘除和取模运算的操作符重载,大数除以大 ...

  8. c语言面试题(感觉比较好的题目)

    1.static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别? 答:static全局变量--只在定义了该变量的源文件内有效,初 ...

  9. Oracle EBS-SQL (SYS-3):sys_人员用户名对应关系查询.sql

    select fu.user_name 用户名,       fu.description 描述,       (select ppf.FULL_NAME          from per_peop ...

  10. Android Studio设置自动编译工程