HTML-★★★★JavaScript的DOM操作★★★★-重点部分
Window.document 对象
一、找到元素
document.getElementById("id"); 根据id找,最多找一个;
var a = document.getElementById("id"); 将找到的元素放在变量中;
document.getElementsByName("name"); 根据name找,找出来的是数组;
document.getElementsByTagName("name"); 根据标签名找,找出来的是数组;
document.getElementsByClassName("name"); 根据Classname找,找出来的是数组;
二、操作内容
1)获取内容:
alert(a.innerHTML); 标签里的HTML代码和文字都获取了;
例如:
body中这么一个div:<div id="me"><b>试试吧</b></div>,在script中使用 innerHTML 获取 div 中的内容:
var a = document.getElementById("me");
alert(a.innerHTML);
alert(a.innerText); 只取里面的文字;
alert(a.outHTML); 包括标签本身的内容;(inner不包括外标签,而out包括外标签)
2)设置内容
a.innerHTML="<font color='red'>Hello World</font>"; 如果用设置内容代码结果如下,div中内容被替换了:
a.innerText 会将赋值的东西原样呈现
情况内容:赋值个空字符串;
2、表单元素:
1)获取内容,有两种获取方式:
var t = document.f1.t1; form表单ID为f1里面的ID为t1的input;
var t = document.getElementById("id"); 直接用id获取;
alert(t.value); 获取input中的value值;
alert(t.innerHTML); 获取<textarea>这里的值</textarea>;
2)设置内容:t.value="内容改变";
3、一个小知识点:
<a href="www.baidu.com" onclick="return.flase">转向百度</a>;加了 return.flase 则不会跳转,默认是 return.ture 则会跳转。按钮也一样,如果按钮中设置 return.flase 则不会进行提交,利用这个可以对提交跳转进行控制。
三、操作属性
首先利用元素的ID找到该元素,存于一个变量中:
var a = document.getElementById("id");
然后可以对该元素的属性进行操作:
a.setAttribute("属性名","属性值"); 设置一个属性,添加或更改都可以;
a.getAttribute("属性名"); 获取属性的值;
a.removeAttribute("属性名"); 移除一个属性;
例:1:做一个问题,如果输入的答案正确则弹出正确,错误则弹出错误;
这里在text里面写了一个daan属性,里面存了答案的值,点击检查答案的时候cheak输入的内容和答案是否一样:
<body>
<form>
中华民国成立于哪一年?
<input type="text" daan="1912年" value="" id="t1" />
<input type="button" id="t2" value="检查答案" onclick="cheak()" />
</form>
</body>
</html>
<script>
function cheak()
{
var a = document.getElementById("t1");
var a1 = a.value;
var a2 = a.getAttribute("daan");
if(a1==a2)
{
alert("恭喜答对了");
}
else
{
alert("很遗憾打错了。。。");
}
}
</script>
例子2:同意按钮,倒计时10s,同意按钮变为可提交的,这里用了操作属性:disabled来改变按钮的状态,当disabled="disabled"时按钮不可用。
<body>
<form>
<input type="submit" id="sm" value="同意(10)" disabled="disabled"/>
</form>
</body>
</html>
<script>
var a = document.getElementById("sm");
var s = ;
function js()
{
s--;
if(s==)
{
a.value="同意";
a.removeAttribute("disabled");
}
else
{
a.value="同意("+s+")";
window.setTimeout("js()",);
}
}
window.setTimeout("js()",);
</script>
window.setTimeout
四、操作样式
首先利用元素的ID找到该元素,存于一个变量中:
var a = document.getElementById("id");
然后可以对该元素的属性进行操作:
a.style.样式=""; 操作此ID样式的属性。
样式为CSS中的样式,所有的样式都可以用代码进行操作。
document.body.style.backgroundColor="颜色"; 整个窗口的背景色。
操作样式的class:a.className="样式表中classname" 操作一批样式
例子:展示图片的手动和自动切换(单独用一篇来做)
HTML-★★★★JavaScript的DOM操作★★★★-重点部分的更多相关文章
- JavaScript的DOM操作-重点部分-第一部分
Window.document 对象 一.找到元素 document.getElementById("id"); 根据id找,最多找一个: var a = document.get ...
- 第一百一十六节,JavaScript,DOM操作样式
JavaScript,DOM操作样式 一.操作样式 CSS作为(X)HTML的辅助,可以增强页面的显示效果.但不是每个浏览器都能支持最新的CSS能力.CSS的能力和DOM级别密切相关,所以我们有必要检 ...
- 第一百一十五节,JavaScript,DOM操作表格
JavaScript,DOM操作表格 学习要点: 1.操作表格 DOM在操作生成HTML上,还是比较简明的.不过,由于浏览器总是存在兼容和陷阱,导致最终的操作就不是那么简单方便了.本章主要了解一下DO ...
- Python之路day13 web 前端(JavaScript,DOM操作)
参考链接:http://www.cnblogs.com/wupeiqi/articles/5433893.html day13 1. CSS示例 2. JavaScript 3. DOM操作 上节内容 ...
- 网站开发综合技术 三 JavaScript的DOM操作
第3部分 JavaScript的DOM操作 1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Windows对象操作 ...
- Javascript的DOM操作 - 你真的了解吗?
摘要 想稍微系统的说说对于DOM的操作,把Javascript和jQuery常用操作DOM的内容归纳成思维导图方便阅读,同时加入性能上的一些问题. 前言 在前端开发的过程中,javascript极为重 ...
- HTML JavaScript的DOM操作
1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Window对象操作 一.属性和方法: 属性(值或者子对象): op ...
- JavaScript的DOM操作(2)
补充: 回车符\r和换行符\n的区别:\r 相当于enter,是段落与段落之间的区别, \n 相当于shift+enter,是行与行之间距离,比较小 几种window操作方法: 1.获取当前窗口大 ...
- (转)Javascript的DOM操作 - 性能优化
转载:https://my.oschina.net/blogshi/blog/198910 摘要: 想稍微系统的说说对于DOM的操作,把Javascript和jQuery常用操作DOM的内容归纳成思维 ...
- JavaScript:DOM操作
一.DOM基础DOM(Document Object Model)即文档对象模型,针对HTML和XML文档的API(应用程序接口).DOM描绘了一个层次化的节点树,运行开发人员添加.移除和修改页面的某 ...
随机推荐
- SQL Server的聚集索引和非聚集索引
微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引.簇集索引)和非聚集索引(nonclustered index,也称非聚类索引.非簇集索引)…… (一) ...
- C++ 模板 与 泛型编程
C++ 模板 与 泛型编程 前言 模板有两种:类模板和函数模板 .模板是泛型编程的基础. 什么叫:泛型编程? 使用独立于特定类型的方式进行编程.也就是我们在编程的时候不明确的写上类型,而是使用一个模板 ...
- Redis只作为缓存,不做持久化的配置
#1.配置缓存内存限制和清理策略 #作为缓存服务器,如果不加以限制内存的话,就很有可能出现将整台服务器内存都耗光的情况,可以在redis的配置文件里面设置: #example: # 限定最多使用1.5 ...
- Appium Windows安装
安装环境 1 安装Nodejs 下载nodejs安装包(http://nodejs.org/download/)安装 测试安装是否成功:运行cmd,输入node -v 2 安装android的SDK ...
- Python爬虫实战六之抓取爱问知识人问题并保存至数据库
大家好,本次为大家带来的是抓取爱问知识人的问题并将问题和答案保存到数据库的方法,涉及的内容包括: Urllib的用法及异常处理 Beautiful Soup的简单应用 MySQLdb的基础用法 正则表 ...
- Native2Ascii文件转换 -- 待完善
摘自:https://www.oschina.net/code/snippet_87799_1612 Native2Ascii文件转换 -- 待完善 package com.xxx.xxx.Util; ...
- mac安装mysql及终端操作mysql与pycharm的数据库可视化
一.Mac安装mysql 首先下载mysql,地址:https://dev.mysql.com/downloads/mysql/ 然后已知安装就好了,会出现让你记住密码的提示,然后就安装好了.... ...
- CentOS下的Git服务器
[Gitosis]CentOS下的Git服务器:Gitosis [摘要] 详细介绍如何在CentOS上配置Gitosis 我们很多人知道Git可能是从Github开始的 ...
- MyBatis和Hibernate相比较
作者:乌拉拉链接:http://www.zhihu.com/question/21104468/answer/58579295 1.开发对比开发速度 Hibernate的真正掌握要比Mybatis来得 ...
- Discuz!X2截屏控件手动安装教程-Xproer.ScreenCapture
版权所有 2009-2015 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com 官方博客:http://www.cnblogs.com/xproer 产品首页:h ...