<div id="time">2020-9-27</div>
<script>
//文档页面从上往下加载,先有标签才能获取元素对象,script写到标签的后面
// get获得element元素by通过驼峰命名法
//参数id是大小写敏感的字符串
//返回的是一个元素对象
var timer = document.getElementById('time');
console.log(timer);
console.log(typeof timer);
console.dir(timer);
</script>

排他算法

        var btnLis = document.querySelectorAll('button');
for (var i = 0; i < btnLis.length; i++) {
btnLis[i].onclick = function () { for (var j = 0; j < btnLis.length; j++) {
btnLis[j].style.backgroundColor = '';
} this.style.backgroundColor = 'red';
}
}

复选框与全选的实现

    <input type="checkbox" id='all'>全选</input>
<input type="checkbox" class='a'>单独</input>
<input type="checkbox" class='a'>单独</input>
<input type="checkbox" class='a'>单独</input>
<input type="checkbox" class='a'>单独</input>
<script>
var cbLis = document.getElementsByClassName('a');
var cbAll = document.getElementById('all'); cbAll.onclick = function () { //全选控制
for (var i = 0; i < cbLis.length; i++) {
cbLis[i].checked = this.checked;
}
} for (var i = 0; i < cbLis.length; i++) { //子选框控制全选按钮
cbLis[i].onclick = function () {
var flag = true;
for (var i = 0; i < cbLis.length; i++) {
if (cbLis[i].checked == false) {
flag = false;
break;
}
}
cbAll.checked = flag;
}
}
</script>

论坛发布评论实现

    <textarea name="" id="" cols="30" rows="10">123</textarea>
<button>发布</button>
<ul>
</ul> <script>
//获取元素对象
var btn = document.querySelector('button');
var text = document.querySelector('textarea');
var ul = document.querySelector('ul'); btn.onclick = function () { //发布按钮点击事件
if (text.value == '') {
alert('没有输入内容');
return false;
} else {
var li = document.createElement('li');
li.innerHTML = text.value + "<a href='javascript:;'>删除</a>";
ul.insertBefore(li, ul.children[0]);
} var as = document.querySelectorAll('a');
for (var i = 0; i < as.length; i++) {
as[i].onclick = function () { //删除链接点击事件
ul.removeChild(this.parentNode);
}
}
}

鼠标移动天使跟随案例

<style>
body {
background-color: black;
} img {
position: absolute;
width: 200px;
}
</style> <body>
<img src="../images/pic.gif" alt="">
</body>

<script>
var pic = document.querySelector('img');
document.addEventListener('mousemove', function (e) {
var x = e.pageX;
var y = e.pageY;
pic.style.left = (x - 100) + 'px';
pic.style.top = (y - 75) + 'px'; })
</script>

鼠标按s光标到文本框内

<body>
<input type="text"> <script>
var search = document.querySelector('input');
document.addEventListener('keyup', function (e) {
if (e.keyCode === 83) {
search.focus();
}
})
</script>
</body>

倒计时隐藏盒子

<body>
<input type="text"> <script>
var search = document.querySelector('input');
setTimeout(function () {
search.style.display = 'none';
}, 3000)
</script>
</body>

JavaScript核心 Dom Bom的更多相关文章

  1. JavaScript HTML DOM,BOM

    DOM DOM 是一个 W3C (万维网联盟) 标准. DOM 定义了用于访问文档的标准: "W3C 文档对象模型 (DOM) 是一个平台和与语言无关的界面, 允许程序和脚本动态访问和更新文 ...

  2. JavaScript 之DOM&BOM

    重点来了 : BOM对象 window对象 : 所有浏览器都支持window对象. 概念上讲 : 一个html文档对应一个window对象. 功能上讲 : 控制浏览器窗口的. 使用上讲 : windo ...

  3. javaScript之DOM,BOM

    javaScript之BOM / DOM: BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行"对话". DOM ...

  4. JavaScript(核心、BOM、DOM)

    http://www.flyne.org/article/407 JavaScript(核心.BOM.DOM) JavaScript是基于对象和事件驱动的客户端脚本语言.有如下特点: 交互性 安全性( ...

  5. JavaScript的组成 | DOM/BOM

    往期回顾 在上一期的<JavaScript的组成 | 核心-ECMAScript >☜里,我们有说到JavaScript 是由三大部分组成,分别是:核心ECMAScript.文档对象模型- ...

  6. JavaScript组成—— DOM、BOM、ECMAScript

    ECMAScript是JS的核心:提供核心语言功能 DOM(文档对象模型):提供访问和操作网页内容的方法和接口 BOM(浏览器对象模型):提供与浏览器交互的方法和接口 1. DOM(文档对象模型) 1 ...

  7. javascript学习笔记 BOM和DOM详解

    js组成 我们都知道, javascript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异. 1. DOM 是 W ...

  8. HTML与DOM BOM javascript

    1.什么是DOM? 简单说就是DOM规定了HTML,XML等的一些文档映射规范,使JavaScript可以根据这些规范来进行获取元素,在元素上进行各种操作,使得用户页面可以动态的变化,从而大大使页面的 ...

  9. [转] JavaScript学习:BOM和DOM的区别和关联

    BOM 1.  BOM是Browser Object Model的缩写,即浏览器对象模型. 2.  BOM没有相关标准. 3.  BOM的最根本对象是window. 从1可以看出来:BOM和浏览器关系 ...

随机推荐

  1. linux学习(九)Linux知识点汇总

    一.基础概念 Q:linux是什么?  Linux是一种基于UNIX的操作系统,它基于Linux内核,常被用作服务器的操作系统. Q:UNIX和LINUX有什么区别? Unix:收费的,商用的,拥有许 ...

  2. python中不需要函数重载的原因

    函数重载主要是为了解决两个问题: 1.可变参数类型 2.可变参数个数 并且函数重载一个基本的设计原则是,仅仅当两个函数除了参数类型和参数个数不同以外,其功能是完全相同的,此时才使用函数重载,如果两个函 ...

  3. Typora操作总结

    Typora 1. Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档 1.1 目录  [toc] 2. 结构类操作 2.1 多级标题  #       一级标题   ...

  4. gRPC-Protocol语法指南

    语法指南 (proto3) Defining A Message Type Scalar Value Types Default Values Enumerations Using Other Mes ...

  5. RabbitMQ 3.6.12延迟队列简单示例

    简介 延迟队列存储的消息是不希望被消费者立刻拿到的,而是等待特定时间后,消费者才能拿到这个消息进行消费.使用场景比较多,例如订单限时30分钟内支付,否则取消,再如分布式环境中每隔一段时间重复执行某操作 ...

  6. Paxos 协议

    可用性与一致性 为了向用户提供更好的服务体验,现代软件架构越来越注重系统的可用性availability. 正是在这种趋势的驱动下,微服务与容器化技术才能在今天大行其道. 而高可用架构的前提是冗余: ...

  7. 004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构

    004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构 Java程序的结构 Java程序外层--类 程序外层,如下面的代码,是一个类的定义. c ...

  8. SetDlgItemText()与UpdateData()的区别

    转载:https://blog.csdn.net/qq_20161893/article/details/72818874 SetDlgItemText(IDC_EDIT_RXDATA,m_strRE ...

  9. 二进制K8S集群使用Bootstrap Token 方式增加Node

    TLS Bootstraping:在kubernetes集群中,Node上组件kebelet和kube-proxy都需要与kube-apiserver进行通信,为了增加传输安全性,采用https方式, ...

  10. 设置 eclipse C++ 版本

    gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) 默认是使用 C++ 98 版本进行编译 设置 eclipse 中 C++ 的版本: Project  -& ...