1、进度条
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css" >
#box{
width: 200px;
height: 30px;
border: 1px solid black;
}
#jinDuBox{
width: 0px;
height: 100%;
background-color: skyblue;
text-align: center;
}
</style>
</head>
<body style="height: 1000px">
<div id="box">
<div id="jinDuBox">
</div>
</div>
<input type="button" value=" 走你 " onclick="testf()" />
</body>
</html>
<script type="text/javascript">
var width =0;
function testf(){
var myTimer = setInterval(function(){
width+=2;
if(width>=200){
width = 200;
window.clearInterval(myTimer);
}
$("jinDuBox").style.width = width+"px";
$("jinDuBox").innerHTML = parseInt(width/200*100)+"%";
},100);
}
function $(id){
return document.getElementById(id);
}
</script>

2、加减乘除计算器
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
/*#num1*/
</style>
</head>
<body>
<input type="text" id="num1" >
<select id="oper" >
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
<option value="%">%</option>
</select>
<input type="text" id="num2" >
<input type="button" value=" = " onclick="testf()" />
<input type="text" id="num3" >
</body>
</html>
<script type="text/javascript">
function testf() {
//1、获取文本框的值
var num1 = Number(document.getElementById("num1").value);//12
var num2 = Number(document.getElementById("num2").value);//23
var oper = document.getElementById("oper").value;
//2、计算
var result;
switch(oper){
case "+":result = num1+num2;break;
case "-":result = num1-num2;break;
case "*":result = num1*num2;break;
case "/":if(num2!=0){
result = num1/num2;
}else{
result = "亲,除数不能为0";
}
break;
case "%":if(num2!=0){
result = num1%num2;
}else{
result = "亲,除数不能为0";
}
break;
default:;
}
//3、显示在文本框里
document.getElementById("num3").value = result;
}
</script>

3、随机n位验证码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=`, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<input type="text" /><span id="ma"></span>
<input type="button" value="验证码" onclick="testf()" />
</body>
</html>
<script src="js/tools.js"></script>
<script>
function testf(){
// var str="";
// for(var i=0;i<4;i++){
// str += parseInt(Math.random()*10);
// }
// document.getElementById("ma").innerHTML = str;
document.getElementById("ma").innerHTML = getMa(4);
}
</script>
4、敏感词过滤
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style type="text/css">
*{
margin: 0;
padding: 0;
}
#sourceImgBox01{
position: relative;
width: 300px;
height: 300px;
background-image: url(img/2.jpg);
background-size: cover;
}
#sourceImgBox02{
position: relative;
width: 200px;
height: 300px;
background-image: url(img/3.jpg);
background-size: cover;
}
</style>
</head>
<body>
请输入您的想法:<input id="textId" type="text" onblur="filterMinGan()" />
</body>
</html>
<script type="text/javascript">
function $(id){
return document.getElementById(id);
}
function filterMinGan(){
var str = $("textId").value;
var arr=["sb","eb","nnd"];
for(var i in arr){
while(str.indexOf(arr[i])>-1){
str = str.replace(arr[i],"*");
}
}
$("textId").value = str;
}
</script>
5、不能重复发言,和过滤敏感词
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style type="text/css">
*{
margin: 0;
padding: 0;
}
#sourceImgBox01{
position: relative;
width: 300px;
height: 300px;
background-image: url(img/2.jpg);
background-size: cover;
}
#sourceImgBox02{
position: relative;
width: 200px;
height: 300px;
background-image: url(img/3.jpg);
background-size: cover;
}
</style>
</head>
<body>
<textarea id="allmessage">
</textarea><br/>
请输入您的想法:
<input id="textId" type="text" onblur="filterMinGan()" /><br/>
</body>
</html>
<script type="text/javascript">
function $(id){
return document.getElementById(id);
}
var arrmessages=[];
function filterMinGan(){
var str = $("textId").value;
var arr=["sb","eb","nnd"];
for(var i in arr){
if(str.indexOf(arr[i])>-1){
alert("亲,请好好说话!");
return;
}
}
if(arrmessages.indexOf(str)>-1){
alert("亲,不能重复发言!");
return;
}
arrmessages.push(str);
$("allmessage").value += str+"\n";
}
</script>
6、秒表
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<input id="hours" type="text" value="00" >:
<input id="minutes" type="text" value="00">:
<input id="seconds" type="text" value="00">
<input type="button" value="开始" onclick="begin()" />
<input type="button" value="暂停" onclick="pause()" />
<input type="button" value="停止" onclick="stop()" />
<input id="result" type="text" >
</body>
</html>
<script>
//setInterval(回调函数,毫秒数); 每隔指定的毫秒数,执行一次回调函数,该函数返回一个定时器编号
//clearInterval(定时器编号); 清除指定的定时器。
var seconds = 0;//保存秒数
var minutes = 0;
var hours = 0;
var myTimer=0;
function begin(){
if(myTimer>0){
return;
}
myTimer=setInterval(function(){
seconds++;
if(seconds>=60){//良性冗余
seconds=0;
minutes++;
if(minutes>=60){
minutes=0;
hours++;
}
}
document.getElementById("seconds").value = seconds<10?"0"+seconds:seconds;
document.getElementById("minutes").value = minutes<10?"0"+minutes:minutes;
document.getElementById("hours").value = hours<10?"0"+hours:hours;
},1000);
console.log(myTimer);
}
function pause(){
clearInterval(myTimer);
myTimer = 0;
}
function addZero(num){
return num<10?"0"+num:num;
}
function stop(){
pause();
document.getElementById("result").value = addZero(hours)+":"+addZero(minutes)+":"+addZero(seconds);
seconds=0;
minutes=0;
hours=0;
document.getElementById("seconds").value = addZero(seconds);
document.getElementById("minutes").value =addZero(minutes);
document.getElementById("hours").value = addZero(hours);
}
</script>
7、隔行变色
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css" >
</style>
</head>
<body style="height: 1000px">
<ul id="box">
<li>第一行</li>
<li>第二行</li>
<li>第三行</li>
<li>第四行</li>
<li>第五行</li>
</ul>
<input type="button" value=" 走你 " onclick="testf()" />
</body>
</html>
<script type="text/javascript">
function testf(){
var liDoms = $("box").children;
for(var i=0;i<liDoms.length;i++){
if(i%2==0){
liDoms[i].style.backgroundColor = "pink";
}else{
liDoms[i].style.backgroundColor = "orange";
}
}
}
function $(id){
return document.getElementById(id);
}
</script>
8、拖拽方块
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
#box{
height: 100px;
width: 100px;
position: absolute;
background: skyblue;
left: 200px;
top:200px;
/* cursor: move; */
}
</style>
</head>
<body>
<div id="box">
</div>
</body>
</html>
<script>
var oBox = document.querySelector("#box");
oBox.onmousedown = function(evt){
var e = evt || event;
var offSetX = e.offsetX;
var offSetY = e.offsetY;
document.onmousemove = function(evt){
var e = evt || event;
var x = e.pageX - offSetX;
var y = e.pageY - offSetY;
if(x<0){
x = 0;
}
var maxLeft = window.innerWidth - oBox.offsetWidth;
if(x>maxLeft){
x = maxLeft;
}
if(y<0){
y = 0;
}
var maxTop = window.innerHeight - oBox.offsetHeight;
if(y>maxTop){
y = maxTop;
}
oBox.style.left = x + "px";
oBox.style.top = y + "px";
}
document.onmouseup = function(){
document.onmousemove = null;
}
}
</script>
9、点击变色
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</body>
</html>
<script>
let oUl = document.querySelector("ul");
oUl.onclick = function (evt) {
var e = evt || event;
var targat = e.target || e.srcElement;
if (targat.tagName == "LI") {
targat.style.backgroundColor = "yellow";
}
}
</script>

10、弹出框
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
#box{
width: 300px;
height:400px;
background: chartreuse;
position: absolute;
display: none;
}
</style>
</head>
<body>
<input type="button" value="登录" id="but">
<div id="box"></div>
</body>
</html>
<script src="弹出框.js"></script>
<script>
let oBox = document.getElementById("box");
let oButs = document.getElementById("but");
let s = new Tan(oBox);
oButs.onclick = function(){
s.She();
s.onclick();
}
</script>
class Tan{
constructor(newbox){
this.box = newbox;
this.but = null;
}
She(){
this.box.style.display = "block";
this.box.style.left = window.innerWidth/2 - this.box.offsetWidth/2 + 'px';
this.box.style.top = window.innerHeight/2- this.box.offsetHeight/2 + 'px';
this.tian();
}
tian(){
this.but = document.createElement("button");
this.but.innerHTML=" × ";
this.but.style.height = 20 + 'px';
this.but.style.width = 30 + 'px';
this.box.appendChild(this.but);
this.box.style.display = "block";
this.but.style.position = "absolute";
this.but.style.left = this.box.offsetWidth - this.but.offsetWidth + 'px';
}
onclick(){
let that = this;
this.but.onclick = function(){
that.box.style.display = "none";
}
}
}

11、两侧跟随的广告
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
img{
position: absolute;
left:0;
top:50px;
}
#demo{
width:1000px;
margin:0 auto;
}
</style>
</head>
<body>
<img src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/5f2434f858ad43c79964a5373c7eb1ad~tplv-k3u1fbpfcp-zoom-1.image" alt="" id="pic"/>
<div id="demo">
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
<p>天王盖地虎,小鸡炖蘑菇</p>
</div>
</body>
</html>
<script type="text/javascript">
var oPic = document.querySelector("#pic");
window.onscroll = function(){
var sTop = document.documentElement.scrollTop || document.body.scrollTop;
startMove( oPic , 50 + sTop );
}
var timer = null;
function startMove(obj,target){
clearInterval(timer);
timer = setInterval(function(){
var speed = (target-obj.offsetTop)/10;
speed = speed>0 ? Math.ceil(speed) : Math.floor(speed);
if( obj.offsetTop == Math.floor(target) ){
clearInterval( timer );
}else{
obj.style.top = obj.offsetTop + speed + "px";
}
},30)
}
</script>
