html照片4张 9张布局,JS原生练习(一)

83个js原生代码实例,从易到难,涵盖js算法和几乎开发中用到的知识点(实时更新中)

实例中也包括了很多布局例如:flex布局和gird布局。

(亲自做,对js的熟练度绝对的加深,有心的给个star,谢谢。)

第一课

第一个  控制DIV属性

说一下代码实现逻辑

用的是点击事件来实现的。

循环逻辑,五个按钮五个点击事件具有很多的相似之处,这样可以减少代码量。

判断逻辑,因为重置按钮需要清空之前的style,这里用if语句也可以,但是比较繁琐,所以我采用了与门操作符,好处就是代码量比较少。

775f9e99daa5

775f9e99daa5

第二个 网页换肤

首先先来说几个注意点,再来说代码逻辑

1、笔者用的是button,遵循JS语义化原则,使人更容易理解。但是得先设置box-sizing:content-box问题,不然按钮的宽高无法正常显示

2、笔者这里用了flex布局,简单方便。推荐这篇文章

代码逻辑

通过点击事件来实现,实现过程主要由一下两点

1、改变引入的css文件

2、改变按钮的class,添加一个active样式。(注:active笔者设置了import属性)

775f9e99daa5

775f9e99daa5

第三个 函数接收参数并弹出

代码逻辑

采用点击事件,获取值后将其传个函数

775f9e99daa5

第四个 用循环将三个Div变成红色

亮点

使用flex布局。

775f9e99daa5

代码逻辑

运用点击事件,当点击之后,利用循环改变背景颜色

775f9e99daa5

第五个 鼠标移入改变样式,鼠标移出恢复

代码逻辑

用鼠标经过事件和鼠标移出事件。当鼠标移入是,改变div的style,移出是将style置为空。

775f9e99daa5

第六个 记住密码提示框

代码逻辑

鼠标经过显示内容,鼠标移出内容隐藏

775f9e99daa5

第二课

第一个 百度输入法

代码逻辑

点击事件控制导航栏的下拉,但是需要加一个if的判断,判断ul块的display属性。

775f9e99daa5

第二个 点击Div,显示其innerHTML

代码逻辑

利用点击事件弹框p元素的innerHTML内容。这个实例,主要帮助理解innerHTML。

775f9e99daa5

第三个  求出数组中所有数字的和

代码逻辑

利用点击事件,然后取得input的value值。

取得的是字符串类型,用split把字符串切成一个一个字符串。

在用Number逐个进行转换,最后累加起来取得和,在输出给另一个div块

775f9e99daa5

第四个  弹出层效果

代码逻辑

利用点击事件,控制两个div块的display。

775f9e99daa5

第五个  函数传参,改变Div任意属性的值

代码逻辑

利用点击事件将参数传递给change函数,改变属性值。

在利用点击事件,将style中的css清除掉。

775f9e99daa5

第六个  图片列表:鼠标移入/移出改变图片透明度

布局

采用flex布局,(笔者越来越喜欢这个布局,感觉没有float那么繁琐,用起来十分方便)

775f9e99daa5

代码逻辑

采用鼠标经过事件和鼠标移出事件改变其style属性。

775f9e99daa5

第七个  简易选项卡

代码逻辑

利用鼠标经过事件改变内容块的display属性,以及本身的背景色。

注意两个点:

1、改变内容块时,笔者用了索引,因为i的不能被引用。

2、在赋值之前,要将所以style重置之后在进行。

775f9e99daa5

第八个  简易JS年历

布局还是采用flex布局

775f9e99daa5

代码逻辑

利用循环和鼠标经过事件改变内容块里面的内容。

775f9e99daa5

第九个  单一按钮显示/隐藏一播放列表收缩展开

代码逻辑

利用点击事件,设定一个判断标准,比如笔者用了show,这个vue里面也有类似用到。

775f9e99daa5

第十个  提示框效果

布局

采用flex布局

775f9e99daa5

代码逻辑

利用的是循环和鼠标经过事件,以及鼠标移出事件,来改变图片的display属性。

775f9e99daa5

第十一个  鼠标移过,修改图片路径

布局

推荐这个教程,挺完善的

775f9e99daa5

代码逻辑

采用鼠标经过事件,切换图片的src属性,笔者用到了正则,减少代码量。

笔者还加了图片的懒加载判断,用的是一张gif的动图

775f9e99daa5

第十二个  复选框(checkbox)全选/全不选/返选

代码逻辑

for循环判断每一个复选项框是不是被选中。

当不被选中时,checked为false,在js的与操作符中当前一项为false时,后一项不被执行。

当循环执行完,判断被选中的数量是不是等于复选项框的数量。

当数量相等时,把全选按钮的check的值赋为true。

当全选项框为true时,innerHTML的值为“全不选”,反之,则为“全选”。

775f9e99daa5

接下去就是全选和全不选,以及反选的逻辑。都是利用循环,逻辑比较简单,不加以赘述。

775f9e99daa5

775f9e99daa5

第三课

第一个  用typeof查看数据类型

代码逻辑,用typoof判断数据类型。

775f9e99daa5

第二个  用parseInt解析数字,并求和

代码逻辑

利用点击事件,累加两个input的值(经过parseInt()转换)。再讲值赋给res

在添加两个句柄,判断input的值为空时,将res切换回?。

775f9e99daa5

第三个  累加按钮,自加1

代码逻辑

点击事件,使得n的数值自动累加,然后赋值给button。

775f9e99daa5

第四个  输入两个数字,比较大小

代码逻辑

利用点击事件,判别两个值的大小,然后用正则选取内容,改变button的innerHTML的属性值。

775f9e99daa5

第五个  页面加载后累加,自加1

代码逻辑

利用setInterval设置定时触发函数,然后给innerHTML的内容赋值。

775f9e99daa5

第六个  判断数字是否为几位数

代码逻辑

先对input输入框采用松开按键事件,判断输入为什么,把所有除数字以外的置为空。

然后在判断input的value值的长度,来判断是几位数。

775f9e99daa5

第七个  简易计算器

第八个  简易时钟

代码逻辑

先定义一个函数,用来获取几点几分几秒,然后在用setTnterval定时器来事实更新dom

正则的作用是当时间是各位数的时候在他前面加个0,使其变成两位数。

775f9e99daa5

简易时钟

第九个  简易倒计时时钟

代码逻辑

定义一个函数,将时间换算成分秒形式,然后在让值递减,使其完成计时功能。

775f9e99daa5

计时器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值