javascript操作元素的常见方法小结


Posted in Javascript onNovember 13, 2019

本文实例讲述了javascript操作元素的常见方法。分享给大家供大家参考,具体如下:

获取元素方法一

可以使用内置对象document上的getElementById方法来获取页面上设置了id属性的元素,获取到的是一个html对象,然后将它赋值给一个变量,比如:

<script type="text/javascript">
  var oDiv = document.getElementById('div1');
</script>
....
<div id="div1">这是一个div元素</div>

上面的语句,如果把javascript写在元素的上面,就会出错,因为页面上从上往下加载执行的,javascript去页面上获取元素div1的时候,元素div1还没有加载,解决方法有两种:

第一种方法:将javascript放到页面最下边

....
<div id="div1">这是一个div元素</div>
....
<script type="text/javascript">
  var oDiv = document.getElementById('div1');
</script>
</body>

第二种方法:将javascript语句放到window.onload触发的函数里面,获取元素的语句会在页面加载完后才执行,就不会出错了。

<script type="text/javascript">
  window.onload = function(){
    var oDiv = document.getElementById('div1');
  }
</script>
....
<div id="div1">这是一个div元素</div>

获取元素方法二

可以使用内置对象document上的getElementsByTagName方法来获取页面上的某一种标签,获取的是一个选择集,不是数组,但是可以用下标的方式操作选择集里面的标签元素。

<script type="text/javascript">
  window.onload = function(){
    var aLi = document.getElementsByTagName('li');
    // aLi.style.backgroundColor = 'gold'; // 出错!不能同时设置多个li
    alert(aLi.length);
    aLi[0].style.backgroundColor = 'gold';
  }
</script>
....
<ul>
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
  <li>6</li>
</ul>

操作元素属性

获取的页面元素,就可以对页面元素的属性进行操作,属性的操作包括属性的读和写。

操作属性的方法

1、“.” 操作
2、“[ ]”操作

属性写法

1、html的属性和js里面属性写法一样
2、“class” 属性写成 “className”
3、“style” 属性里面的属性,有横杠的改成驼峰式,比如:“font-size”,改成”style.fontSize”

通过“.”操作属性:

<script type="text/javascript">
  window.onload = function(){
    var oInput = document.getElementById('input1');
    var oA = document.getElementById('link1');
    // 读取属性值
    var sValue = oInput.value;
    var sType = oInput.type;
    var sName = oInput.name;
    var sLinks = oA.href;
    // 写(设置)属性
    oA.style.color = 'red';
    oA.style.fontSize = sValue;
  }
</script>
......
<input type="text" name="setsize" id="input1" value="20px">
<a href="http://www.itcast.cn" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="link1">传智播客</a>

通过“[ ]”操作属性:

<script type="text/javascript">
  window.onload = function(){
    var oInput1 = document.getElementById('input1');
    var oInput2 = document.getElementById('input2');
    var oA = document.getElementById('link1');
    // 读取属性
    var sVal1 = oInput1.value;
    var sVal2 = oInput2.value;
    // 写(设置)属性
    // oA.style.val1 = val2; 没反应
    oA.style[sVal1] = sVal2;    
  }
</script>
......
<input type="text" name="setattr" id="input1" value="fontSize">
<input type="text" name="setnum" id="input2" value="30px">
<a href="http://www.itcast.cn" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="link1">传智播客</a>

innerHTML

innerHTML可以读取或者写入标签包裹的内容

<script type="text/javascript">
  window.onload = function(){
    var oDiv = document.getElementById('div1');
    //读取
    var sTxt = oDiv.innerHTML;
    alert(sTxt);
    //写入
    oDiv.innerHTML = '<a href="http://www.itcast.cn" rel="external nofollow" rel="external nofollow" rel="external nofollow" >传智播客<a/>';
  }
</script>
......
<div id="div1">这是一个div元素</div>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript操作DOM技巧总结》、《JavaScript页面元素操作技巧总结》、《JavaScript事件相关操作与技巧大全》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》

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

Javascript 相关文章推荐
jQuery 解析xml文件
Aug 09 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
May 20 Javascript
全面解析JavaScript中“&amp;&amp;”和“||”操作符(总结篇)
Jul 18 Javascript
Vue.js第一天学习笔记(数据的双向绑定、常用指令)
Dec 01 Javascript
Bootstrap Table使用整理(五)之分页组合查询
Jun 09 Javascript
JavaScript求一组数的最小公倍数和最大公约数常用算法详解【面向对象,回归迭代和循环】
May 07 Javascript
vue组件tabbar使用方法详解
Nov 06 Javascript
iview的table组件自带的过滤器实现
Jul 12 Javascript
vue.js使用v-model实现父子组件间的双向通信示例
Feb 05 Javascript
原生js拖拽实现图形伸缩效果
Feb 10 Javascript
vue中defineProperty和Proxy的区别详解
Nov 30 Vue.js
浅析JavaScript中的变量提升
Jun 01 Javascript
Vue监听滚动实现锚点定位(双向)示例
Nov 13 #Javascript
vue项目中锚点定位替代方式
Nov 13 #Javascript
微信小程序后端(java)开发流程的详细步骤
Nov 13 #Javascript
jQuery实现滑动星星评分效果(每日分享)
Nov 13 #jQuery
vue+导航锚点联动-滚动监听和点击平滑滚动跳转实例
Nov 13 #Javascript
jquery获取input输入框中的值
Nov 13 #jQuery
Vue 实现CLI 3.0 + momentjs + lodash打包时优化
Nov 13 #Javascript
You might like
php笔记之:有规律大文件的读取与写入的分析
2013/04/26 PHP
php强制更新图片缓存的方法
2015/02/11 PHP
Zend Framework数据库操作技巧总结
2017/02/18 PHP
用JavaScript将从数据库中读取出来的日期型格式化为想要的类型。
2009/08/15 Javascript
支持ie与FireFox的剪切板操作代码
2009/09/28 Javascript
jQuery Lightbox 图片展示插件使用说明
2010/04/25 Javascript
jQuery操作input type=radio的实现代码
2012/06/14 Javascript
判定是否原生方法的JS代码
2013/11/12 Javascript
获取select元素被选中的文本内容的js代码
2014/01/29 Javascript
js控制再次点击按钮之间的间隔时间可防止重复提交
2014/08/01 Javascript
js实现Select列表内容自动滚动效果代码
2015/08/20 Javascript
VueJS全面解析
2016/11/10 Javascript
nodejs 实现钉钉ISV接入的加密解密方法
2017/01/16 NodeJs
JS中解决谷歌浏览器记住密码输入框颜色改变功能
2017/02/13 Javascript
使用JS 插件qrcode.js生成二维码功能
2017/02/20 Javascript
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
vue自定义键盘信息、监听数据变化的方法示例【基于vm.$watch】
2019/03/16 Javascript
微信小程序整合使用富文本编辑器的方法详解
2019/04/25 Javascript
[01:08]DOTA2次级职业联赛 - Shield战队宣传片
2014/12/01 DOTA
[01:08]DOTA2次级职业联赛 - Wings 战队宣传片
2014/12/01 DOTA
详解Python字符串对象的实现
2015/12/24 Python
Python正则获取、过滤或者替换HTML标签的方法
2016/01/28 Python
基于Python开发chrome插件的方法分析
2018/07/07 Python
在Python中输入一个以空格为间隔的数组方法
2018/11/13 Python
运行Python编写的程序方法实例
2020/10/21 Python
用CSS3实现无限循环的无缝滚动的示例代码
2017/11/01 HTML / CSS
HTML5制作表格样式
2016/11/15 HTML / CSS
迪卡侬比利时官网:Decathlon比利时
2019/12/28 全球购物
保加利亚手表、香水、化妆品和珠宝购物网站:Brasty.bg
2020/04/22 全球购物
Java的基础面试题附答案
2016/01/10 面试题
假日旅行社实习自我鉴定
2013/09/24 职场文书
淘宝中秋节活动方案
2014/01/31 职场文书
创业者是否需要商业计划书?
2014/02/07 职场文书
孩子教育的心得体会
2014/09/01 职场文书
2014年园林绿化工作总结
2014/12/11 职场文书
SQL实现LeetCode(197.上升温度)
2021/08/07 MySQL