JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法


Posted in Javascript onJanuary 20, 2017

本文实例讲述了JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法。分享给大家供大家参考,具体如下:

当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。HTML DOM 模型被构造为对象的树。

通过可编程的对象模型,JavaScript 获得了足够的能力来创建动态的 HTML。例如:改变HTML元素,改变HTML属性,改变CSS样式,事件响应。

效果图:

JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法

代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="zh-cn" />
<title>Javascript HTML DOM</title>
<head>
 <style type="text/css">
  body {background-color:#eeeeee}
 </style>
</head>
<body>
 <h3>(一)通过 id 查找 HTML 元素</h3>
 <p id = "hw">Hello world!</p>
 <script>
  x = document.getElementById("hw");
  document.write('<p>id="hw"的段落的文本是:'+x.innerHTML+'</p>');
 </script>
 <button onclick = "setCurrentTime()">将id="hw"的文字改为当前时间</button>
 <script>
  function setCurrentTime(){
   x = document.getElementById("hw");
   x.innerHTML = Date()
  }
 </script>
 <h3>(二)通过 标签名 查找 HTML 元素</h3>
 <div id = "mainDiv">
  <p>This is a paragragph.</p>
  <p>This is another paragragph.</p>
  <p>Yes you're right! This is also paragragph.</p>
 </div>
 <script>
  xx = document.getElementById("mainDiv");
  tagContents = xx.getElementsByTagName("p");
  document.write("<p>使用Javascript查找id为mainDiv下的p标签的内容</p>");
  for(i=0;;i++){
   var tag = tagContents[i]
   if(tag!=null){
    document.write("<p>"+tag.innerHTML+"</p>")
   }else{
    document.write("<p>共有"+i+"条内容</p>")
    break;
   }
  }
 </script>
 <h3>(三)修改 HTML 的属性</h3>
 <img id = "bol" src = "images/eg_bulboff.gif" width="70px" height="120px"/>
 <p><button onclick = "changeSrc()">改变图片资源</button></p>
 <script>
  function changeSrc(){
   x = document.getElementById("bol");
   if (x.src.match("eg_bulboff.gif")){
    x.src = "images/eg_bulbon.gif"
   }else{
    x.src = "images/eg_bulboff.gif"
   }
  }
 </script>
 <h3>(四)修改 CSS 样式</h3>
 <p>
  <span id = "para_1">This is a test paragraph.</span>
  <button onclick="changeTextColor()">改变文字颜色</button>
 </p>
 <p>
  <span id = "para_2">This is another paragraph.
  <button onclick="changeTextFont()">改变字体</button>
 </p>
 <p>
  <span id = "para_3">This is HELLO WORLD.</span>
  <button onclick="changeTextSize()">改变字号</button>
 </p>
 <p>
  <button onclick="changeVisibility()">显示/隐藏</button>
  <span id = "para_4">示例文字</span>
 </p>
 <script>
  function changeTextColor(){
   ele_1 = document.getElementById("para_1");
   ele_1.style.color = "red";
  }
  function changeTextFont(){
   ele_2 = document.getElementById("para_2");
   ele_2.style.fontFamily = "Arial";
  }
  function changeTextSize(){
   ele_3 = document.getElementById("para_3");
   ele_3.style.fontSize = "larger";
  }
  document.getElementById("para_4").style.visibility = "visible"
  function changeVisibility(){
   ele_4 = document.getElementById("para_4");
   if(ele_4.style.visibility.match("visible")){
    ele_4.style.visibility = "hidden"
   }else{
    ele_4.style.visibility = "visible"
   }
  }
 </script>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
js 颜色选择器(兼容firefox)
Mar 05 Javascript
javascript获取四位数字或者字母的随机数
Jan 09 Javascript
jquery隔行换色效果实现方法
Jan 15 Javascript
Javascript之Number对象介绍
Jun 07 Javascript
老生常谈JavaScript数组的用法
Jun 10 Javascript
解决Window10系统下Node安装报错的问题分析
Dec 13 Javascript
React入门教程之Hello World以及环境搭建详解
Jul 11 Javascript
JavaScript文件的同步和异步加载的实现代码
Aug 19 Javascript
又拍云 Node.js 实现文件上传、删除功能
Oct 28 Javascript
小程序选项卡以及swiper套用(跨页面)
Jun 19 Javascript
vue+springboot+element+vue-resource实现文件上传教程
Oct 21 Javascript
vue-quill-editor插入图片路径太长问题解决方法
Jan 08 Vue.js
BootStrap CSS全局样式和表格样式源码解析
Jan 20 #Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
Jan 20 #Javascript
Javascript DOM事件操作小结(监听鼠标点击、释放,悬停、离开等)
Jan 20 #Javascript
JS中from 表单序列化提交的代码
Jan 20 #Javascript
jquery表单验证插件validation使用方法详解
Jan 20 #Javascript
jquery表单插件form使用方法详解
Jan 20 #Javascript
AngularJs上传前预览图片的实例代码
Jan 20 #Javascript
You might like
php中iconv函数使用方法
2008/05/24 PHP
最新用php获取谷歌PR值算法,附上php查询PR值代码示例
2011/12/25 PHP
Win7环境下Apache连接MySQL提示连接已重置的解决办法
2017/05/09 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
使用JavaScript库还是自己写代码?
2010/01/28 Javascript
jquery ajax return没有返回值的解决方法
2011/10/20 Javascript
javascript模拟C#格式化字符串
2015/08/26 Javascript
jQuery Easyui实现左右布局
2016/01/26 Javascript
node安装--linux下的快速安装教程
2017/03/21 Javascript
ES6新特性之模块Module用法详解
2017/04/01 Javascript
Node.JS中快速扫描端口并发现局域网内的Web服务器地址(80)
2017/09/18 Javascript
vue构建动态表单的方法示例
2018/09/22 Javascript
jquery实现选项卡切换代码实例
2019/05/14 jQuery
JS Ajax请求会话过期处理问题解决方法分析
2019/11/16 Javascript
NestJs使用Mongoose对MongoDB操作的方法
2021/02/22 Javascript
使用Python中的greenlet包实现并发编程的入门教程
2015/04/16 Python
python 重定向获取真实url的方法
2018/05/11 Python
python批量查询、汉字去重处理CSV文件
2018/05/31 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
python 判断字符串中是否含有汉字或非汉字的实例
2019/07/15 Python
使用python代码进行身份证号校验的实现示例
2019/11/21 Python
Python使用循环神经网络解决文本分类问题的方法详解
2020/01/16 Python
python使用html2text库实现从HTML转markdown的方法详解
2020/02/21 Python
基于Python绘制美观动态圆环图、饼图
2020/06/03 Python
Python3利用openpyxl读写Excel文件的方法实例
2021/02/03 Python
介绍一下linux文件系统分配策略
2013/02/25 面试题
黄金搭档广告词
2014/03/21 职场文书
学生会部长竞聘书
2014/03/31 职场文书
高中学生评语大全
2014/04/25 职场文书
十佳好少年事迹材料
2014/08/21 职场文书
放飞梦想演讲稿600字
2014/08/26 职场文书
研修心得体会
2014/09/04 职场文书
社保代办委托书怎么写
2014/10/06 职场文书
健康证明
2015/06/19 职场文书
《乘法分配律》教学反思
2016/02/24 职场文书
《进击的巨人》新联动CM 兵长强势出击兽巨人
2022/04/05 日漫