Js基础

1:document.write()

这个是动态创建元素内容,利用js。这个可以利用js来创建元素,文本,标签等,document.write()与document.writeln()的区别就在于writeln()输出内容后,会在源代码中换一行,而write()会紧挨着输出不会有任何换行。这个标签必须随页面一同加载显示。

在一个网页中引用其它网页可以使用js的document.write(html代码),这样子生成。

2:最基本的dom遍历属性

àdocument.getElementById()

根据元素id获取元素,使用这个,不是集合,是单个的元素。

àdocument.getElementsByName()

但是这个特殊,根据元素的name获取元素,这个放回的是对象数组,和下面获取到的是集合只有上面的获取到的是单个的元素。在表单元素的时候使用最好。

à document.getElementsByTagName()

这个也是获取元素,根据页面上标签的名字获取所有的元素,获取到的是个集合。

Eg:按钮实现里面内容变化

  1. <script type="text/javascript">
  2.     window.onload = function() {
  3.         var inputs = document.getElementsByTagName('input');
  4.         for (var i = 0; i < inputs.length; i++) {
  5.             inputs[i].onclick = function () {
  6.                 for (var c = 0; c < inputs.length; c++) {
  7.                     if(inputs[c].type=="button") {
  8.                         inputs[c].value = '哈哈哈';
  9.                     }
  10.                 }
  11.                 this.value = '呜呜';
  12.             };
  13.         }
  14.     };
  15. </script>

Eg:利用计时器实现使用说明的等待时间。

  1. <script type="text/javascript">
  2.     window.onload = function () {
  3.         var ss = 4;
  4.         //这里启动计时器
  5.            var time=setInterval(function() {
  6.                var sa = document.getElementById('btn1');
  7.                if (ss > 0) {
  8.                    sa.value = '请稍等几分钟' + ss + '';
  9.                    ss--;
  10.                } else {
  11.                    sa.value = '同意';
  12.                    sa.disabled = false;
  13.                    clearInterval(time);
  14.                }
  15.            }, 1000);
  16.     };
  17. </script>

àdocument.createElement('标签名');

  1. <script type="text/javascript">
  2.     window.onload = function() {
  3.         document.getElementById('btn').onclick = function() {
  4.             var alink = document.createElement('a'); //动态创建元素
  5.             alink.href = 'http://www.baidu.com';
  6.             alink.target = '_black';
  7.             alink.innerText = '百度';
  8.             document.getElementById('div1').appendChild(alink); //将其添加到div中.
  9.  
  10.             var btton = document.createElement('input');
  11.             btton.type = 'text';
  12.             document.getElementById('div1').appendChild(btton);
  13.         };
  14.     };
  15. </script>

删除层中元素

  1. document.getElementById('btn1').onclick = function() {
  2.     var sss = document.getElementById('div1');
  3.     while (sss.firstChild) {
  4.         sss.removeChild(sss.firstChild);
  5.     }
  6. };

***:在程序中需要判断类型,我们可以利用typeof()来得到其变量的类型。

innerText.和innerHTML的区别

这个就是

Eg:往table中添加内容。

下面的dict格式是json的格式,也是一种键值对的形式。

  1. <title></title>
  2. <script type="text/javascript">
  3.     var dict = {
  4.         '百度': 'http://www.baidu.com',
  5.         '京东': 'http://www.jd.com',
  6.         '淘宝': 'http://www.taobao.com',
  7.     };
  8.     window.onload = function() {
  9.         document.getElementById('btn').onclick = function() {
  10.             var table = document.createElement('table');
  11.             table.border = '1';
  12.             table.backgroundColor = 'red';
  13.             for (var key in dict) {
  14.                 var tr = document.createElement('tr');
  15.                 var td1 = document.createElement('td');
  16.                 td1.innerHTML = key;
  17.                 var td2 = document.createElement('td');
  18.                 td2.innerHTML = '<a href="' + dict[key] + '">' + key + '</a>';
  19.                 tr.appendChild(td1);
  20.                 tr.appendChild(td2);
  21.                 table.appendChild(tr);
  22.             }
  23.             document.body.appendChild(table);
  24.         };
  25.     };
  26. </script>

Js操作样式

注意:

修改元素的样式不是设置class属性,而是className属性。class是js中的一个保留字,属性不能使用关键字,保留字就变为了classname。

使用方式,属性名.style,注意这里的属性名可能和css中的名字不一样,我们要注意区分。

  1. <script type="text/javascript">
  2.     window.onload = function() {
  3.         document.getElementById('btn').onclick = function() {
  4.             var div = document.getElementById('div').style;
  5.             div.backgroundColor = 'red';
  6.             div.border = '1px solid blue';
  7.             div.width = '200px';
  8.             div.height = '400px';
  9.             div.fontFamily = '楷体';
  10.             div.styleFloat = 'right';
  11.         };
  12.         document.getElementById('btn1').onclick = function() {
  13.             document.getElementById('div').style.display = 'none';
  14.         };
  15.     };
  16. </script>

JavaScript基础插曲—获取标签,插入元素,操作样式的更多相关文章

  1. JavaScript基础插曲—元素样式,正则表达式,全局模式,提取数组

    JavaScript基础学习 学习js的基础很重要,可以让自己有更多的技能.我相信这个以后就会用到. Eg:点击选择框,在div中显示出选择的数量 window.onload = function() ...

  2. JavaScript基础插曲-练习

    Javascript基础学习 eg:利用正则表达式来去掉空格. 1:msg=' Hello ': <script type="text/javascript">     ...

  3. JavaScript基础—插曲

    Javascript基础 1:js中我们最好使用单引号,其实可以使用双引号的但是为了区别所以js中全部使用单引号.注释和C#的是一样的.网页里面的执行顺序是从上到下依次执行的,不管你js放到哪里,都会 ...

  4. javascript中DOM获取和设置元素的内容、样式及效果

    getElementById() 根据id获取dom元素 没有找到则返会Null <!DOCTYPE html> <html lang="en"> < ...

  5. JavaScript基础插曲---apply,call和URL编码等方法

    Js基础学习 Js的压缩: 就是利用js的语法格式通过缩短变量名,去掉空格等来进行压缩. Apply和call的使用 1:apply方法:应用某一对象的方法,用于一个对象替换当前对象.主要是改变thi ...

  6. JavaScript通过id获取不到元素是什么原因阿?

    s代码 JavaScript code   ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 function show_more_mess() {     $(&qu ...

  7. JavaScript基础—插曲02

    Js学习基础 1:关于js中的数组 这里面可以是键值对的形式来存储的,我们必须利用forIn来输出,这就相当于foreach一样. var dir = new Array(); dir['0'] = ...

  8. <javaScript>通过getElementsByTagName获取标签的class值

    console.log(p[1].id); console.log(p.item(1).id); console.log(p[2].getAttribute("class")); ...

  9. C++ 关联容器之map插入相同键元素与查找元素操作

    一.插入相同键元素操作 (1)insert方法 在map中的键必须是唯一的,当想map中连续插入键相同但值不同的元素时,编译和运行时都不会发生任何错误,系统会忽略后面的对已存在的键的插入操作,如 ma ...

随机推荐

  1. Arcgis –>ArcToolBox 有些工具不能用,没有许可

    问题描述 错误信息: You do not have the necessary license to execute the selected tool   我3D Analyst是有许可的.   ...

  2. 图解集合5:不正确地使用HashMap引发死循环及元素丢失

    问题引出 前一篇文章讲解了HashMap的实现原理,讲到了HashMap不是线程安全的.那么HashMap在多线程环境下又会有什么问题呢? 几个月前,公司项目的一个模块在线上运行的时候出现了死循环,死 ...

  3. Unity 热更新实例一、C#Light 和UI系统使用实例

    接下来我会运用热更新的机制,逐步制作一些例子来阐释脚本系统如何和Unity结合. 脚本不限于使用C#Lite,但是C#Lite会有一些便利之处,请往下看. 结合机制也不限于这一种,但是C#Lite的设 ...

  4. 使用CSS sprites减少HTTP请求

    sprites是鬼怪,小妖精,调皮鬼的意思,初听这个高端洋气的名字我被震慑住了,一步步掀开其面纱后发觉很简单的东西,作用却很大 神马是CSS 小妖精 CSS sprites是指把网页中很多小图片(很多 ...

  5. IOS UIView 01-View开始深入 绘制像素到屏幕上

    注:本人是翻译过来,并且加上本人的一点见解. 前言 一个像素是如何绘制到屏幕上去的?有很多种方式将一些东西映射到显示屏上,他们需要调用不同的框架.许多功能和方法的结合体.这里我们大概的看一下屏幕之后发 ...

  6. linux奇技淫巧 2

    压缩解压==================================================================================== unzip xx.zi ...

  7. MySQL的Grant命令[转]

    本文实例,运行于 MySQL 5.0 及以上版本. MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删 ...

  8. 我所了解的chrome

    Chrome的隐身模式 先来说说隐身模式的启用方法吧 1.键盘快捷:Ctrl + Shift + N. 2.在Windows7下的任务栏处,右击“Chrome”图标,会出一个下拉菜单,点击“新建隐身窗 ...

  9. Atitit jsr规范化分类 attilax总结

    Atitit jsr规范化分类 attilax总结 按照技术类别可以分成以下几类:1.Java EE (39 JSRs) --- J2EE平台规范 2.Java SE (42 JSRs) --- J2 ...

  10. Atitit  ocr识别原理 与概论 attilax总结

    Atitit  ocr识别原理 与概论 attilax总结 1.1. Ocr的过程与流程1 1.2. OCR不同技术细分略有不同,但大概原理是一样的. 即主要技术过程是:二值化(又叫归一化)----- ...