一. 通过JS动态的修改HTML元素的样式
 
1. 要想在js中动态的修改HTML元素的样式,首先需要写document,
   document我们称之为文档对象,这个对象中保存了当前网页中所有的HTML标签
  代码写法如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>51-自定义原型对象</title>
</head>
<body>
<div class="box" id="father">123</div>
<div class="box" id="son">456</div>
<script>
console.log(document); </body>
</html>

2.上面的代码执行后,可以在浏览器控制台console里发现document文档对象如下图:

3.展开document文档对象,我们可以发现包含了当前网页中所有的HTML标签.如下图:

二. 在<script>标签里定义对象,
 把document.querySelector("#son"); 赋值给div ; 格式:   div=document.querySelector("需要选择的标签名称");
 也就是说在document文档对象后写querySelector来选择一个id叫做son 的 div盒子 赋给变量div
 选择了id选择器后,便可以对这个ID对应 的<div>盒子修改它的样式
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>51-自定义原型对象</title>
</head>
<body>
<div class="box" id="father">123</div>
<div class="box" id="son">456</div>
<script>
//1.通过js代码动态的找到HTML标签
//document我们称之为文档对象,这个对象中保存了当前网页中所有的HTML标签
//2.如何通过JS动态的修改HTML元素的样式
var div=document.querySelector("#son");
console.log(div);
div.style.width="200px";
div.style.height="200px";
div.style.backgroundColor="red";
div.style.borderRadius="50%";
</script>
</body>
</html>
 
三.如何动图的创建一个HTML元素,
方法基本如上,
只是document后的querySelector改为createElement. 
//如何动态的创建一个HTML元素
//格式: document. createElement. ("标签的名称")
var div=document. createElement. ("div")
var div=document. createElement. ("p")
var div=document. createElement. ("span")
 
四.如何动态创建的元素添加到另一个元素中
    1. 比如需要在<div>盒子标签里创建<p>标签
 
   1.1 首先选择需要创建元素或者标签的标签div, 然后在调用赋值给对象div.
        格式:  var div=document.querySelector("div");
 
   1.2  然后创建p标签,并赋值给对象p
        格式: var p=document.createElement("p");
 
   1.3 然后把创建的<p>标签传入到调用的元素<div>标签里.
        格式: 元素对象.appendChild(元素对象)
        代码:  div. appendChild(p);
 代码如下所示:

var div=document.querySelector("div");
var p=document.createElement("p");
div. appendChild(p);
 
五.如何删除一个指定元素或标签
代码如下:
// 如何删除一个指定元素
var div=document.querySelector("div>a");
console.log(a) ; // 通过访问一个元素对象的parentElement, 可以找到当前元素对象的父元素(父节点)
console.log(a. parentElement) ; //通过一个元素的父元素调用removeChild方法, 就可以讲该父元素中指定的子元素删除
a. parentElement. removeChild(a) ;
六. 在js中如何不断的重复执行某一段代码?
 1.方法一:
    代码如下图:
    注释:  图中代码里的seInterval(test, 1000);括号里的第一个参数test参数是被执行的函数test;
    第二个参数是毫秒,也就是需要隔多少时间执行一次.
//在js中如何不断的重复执行某一段代码 ?
function test(){
console.log ("test")
} //每隔多少毫秒执行一次第一个参数(test函数)
setInterval(test, 1000) ;
2.方法二:
在企业开发中常用的方法: 给seInterval传一个匿名函数,然后每隔1000毫秒执行一下匿名函数,
代码如下:
var nm=1 ;

function test(){
console.log ("test")
} setInterval(function (){
console.log ("test", num) ;
num++ ;
}, 1000) ;
//每执行一次匿名函数的代码块,就执行增量表达式num++.
 
 

通过JS动态的修改HTML元素的样式和增添标签元素等的更多相关文章

  1. JS动态添加Easyui的HTML时样式丢失

    解决办法: $.parser.parse($("#creatLi").html(<li>xxxxxx</li>)); ------------------- ...

  2. js动态加载HTML元素时出现的无效的点击事件

    项目中列表数据中隐藏着详情数据, 图一: 详情数据是:根据当前行的数据作为参数,通过ajax请求到后台返回的数据,再根据返回的结果动态生成HTML页面 图二: js文件中的这些js的点击事件无效: j ...

  3. html标签元素分类

    元素分类 html中的标签元素大体分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1>...&l ...

  4. JS动态生成的元素,其对应的方法不响应(比如单击事件,鼠标移动事件等)

    主要原因:在页面给元素注册点击事件的时候[ $(function () {  XXX }); ],JS动态生成的元素还尚未生成,所以click事件就没有生效 解决方法: 方案一:js动态生成元素后再给 ...

  5. form表单 无法提交js动态添加的表单元素问题。。

    第一种情况, 这种情况js动态添加的表单元素是不能提交到服务器端的 <table> <form method="post" action=" url   ...

  6. 2)JS动态生成HTML元素的爬取

    2)JS动态生成HTML元素的爬取 import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.W ...

  7. 微信小程序 JS动态修改样式

    微信小程序这个坑啊,js动态修改样式,我们并不能用js或者jq 轻轻松松一行代码搞定.或者用removeClass addClass 来修改样式. 以下是一种动态修改样式的方法,原理是绑定数据,然后动 ...

  8. jquery on() bind()绑定的点击事件在js动态新添加的元素生效

    方法一:$('.class').on("click",function(){……}); 相当于 $('.class').bind("click",functio ...

  9. JS动态修改微信浏览器中的title

    JS动态修改微信浏览器中的title我们的原理是设置一个ifame然后我们再加载一下就可以实现了,具体的例子如下所示. 平时使用JS修改title,直接document.title=新标题就好了 这样 ...

随机推荐

  1. javascript深入理解-从作用域链理解闭包

    一.概要 红宝书(P178)对于闭包的定义:闭包就是有权访问另外一个函数作用域中变量的函数. MDN,对于闭包的定义:闭包就是指能够访问自由变量的函数. 那么什么是自由变量?自由变量就是在函数中使用, ...

  2. 理解 KMP 算法

    KMP(The Knuth-Morris-Pratt Algorithm)算法用于字符串匹配,从字符串中找出给定的子字符串.但它并不是很好理解和掌握.而理解它概念中的部分匹配表,是理解 KMP 算法的 ...

  3. Mybatis框架的简单运用

    一.配置流程 1.流程示意图(通过XML映射文件实现): 2.流程: 2.1 导入包: 2.1.1 下载包 数据库驱动包(本文以MySQL为例):https://mvnrepository.com/a ...

  4. 分享 Xamarin.android 关于使用SQLiteOpenHelper的小白经验

    关于使用SQLiteOpenHelper的使用,对于小白的我,百度啦相当多的大神的介绍,均未能让我这新手(零基础)成功学会,参考了http://www.cnblogs.com/yaozhenfa/p/ ...

  5. python全栈目录

    Python Python开发[第一篇]:初识 Python开发[第二篇]:基本数据类型 Python开发[第三篇]:函数 Python开发[第四篇]:杂货铺 Python开发[第五篇]:模块 Pyt ...

  6. 数据库之redis篇(3)—— Python操作redis

    虽然前面两篇已经说了redis的一些配置安装什么的,篇幅有点长,可能看完了也不知道怎么操作,这里再浓缩一下: 什么是redis redis完全开源免费的,遵守BSD协议,是一个高性能的非关系型key- ...

  7. 【原】无脑操作:Centos 7后台运行及终止jar包程序

    1.后台运行jar包程序,输入:nohup java -jar /路径/程序.jar & 2.后台终止jar包程序,输入:ps -ef | grep java,查看使用java命令的进程,再输 ...

  8. 第九周LINUX 学习笔记

    基于GTID的mysql主从简单复制 一.简单主从模式配置步骤1.配置主从节点的服务配置文件1.1.配置master节点:[mysqld]binlog-format=ROWlog-bin=master ...

  9. Windows Server 2016-客户端加域准备工作

    今天我们简单归总下客户端加域的先决条件或着说准备工作,方便新手或者管理员日常加域失败排错等内容,希望可以帮到大家. 一.网络准备:(保证客户端与域控解析与网络通信正常) DHCP模式:DHCP已指定域 ...

  10. 修改Android idc文件

    安卓系统idc文件里面包含以下几点内容: 1 #=0 外部设备 =1内部设备 2 device.internal = 0 3 #定义:keyboard.layout = <name> 4 ...