06-Web APIs

Web APIs 06



前情回顾

在这里插入图片描述

案例详解-仿京东放大镜

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

过渡(CSS3) transition

过渡(transition)是CSS3中具有颠覆性的特征之一,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果。
帧动画:通过一帧一帧的画面按照固定顺序和速度播放。如电影胶片
在这里插入图片描述
在这里插入图片描述
在CSS3里使用transition可以实现补间动画(过渡效果),并且当前元素只要有“属性”发生变化时即存在两种状态(我们用A和B代指),就可以实现平滑的过渡,为了方便演示采用hover切换两种状态,但是并不仅仅局限于hover状态来实现过渡。

过渡语法格式

transition: 要过渡的属性 花费时间 运动曲线 多久以后开始;

说明: 可以有多组属性变化,用"逗号"隔开。

属性描述CSS
transition简写属性,用于在一个属性中设置四个过渡属性。3
transition-property规定应用过渡的 CSS 属性的名称。3
transition-duration定义过渡效果花费的时间。默认是 0。3
transition-timing-function规定过渡效果的时间曲线。默认是 “ease”。3
transition-delay规定过渡效果何时开始。默认是 0。3

如果想要所有的属性都变化过渡, 写一个all 就可以
transition-duration 花费时间 单位是 秒s 也可以是毫秒ms 他们之间的关系是 1s=1000ms
运动曲线 默认是 ease
何时开始 默认是 0s 立马开始

运动曲线示意图如下:

在这里插入图片描述
注意: 过渡效果只能产生从某个值到另外一个具体的值的过渡, 比如display:none就不能过渡为dipslay:block

ontransitionend 事件

该事件会在DOM元素 CSS transition 结束后触发。 如果在transition完成前设置 display 为"none",事件不会被触发。

/*
 * 在指定的元素上监听transitionend事件, 例如#slidingMenu
 * 然后指定一个函数, 例如 showMessage()
 */
function showMessage() {
    console.log('Transition 已完成');
}

var element = document.getElementById("slidingMenu");
element.addEventListener("transitionend", showMessage, false);

举例:
在这里插入图片描述

1. 快递单号输入内容时,上面的大号字体盒子(con)显示
2. 同时把快递单号里面的值(value)获取过来赋值给con盒子(innerText)做为内容
3. 如果快递单号里面内容为空,则隐藏大号字体盒子(con)盒子
4. 注意:keydown和keypress在文本框里面的特点:他们两个事件触发的时候,文字还没落入文本框中
5. keyup事件触发的时候,文字已经落入文本框里面了
6. 当我们失去焦点,就隐藏这个con盒子
7. 当我们获取焦点,并且文本框内容不为空,就显示这个con盒子

案例-淘宝无缝轮播图

轮播图也称为焦点图,是网页中比较常见的网页特效。

无缝轮播图分析

在这里插入图片描述

  • 一打开就显示随机设置网页背景颜色,并且把十六进制颜色值显示在页面中;
    并且每隔一秒,自动改变网页背景颜色以及十六进制颜色值

需求

功能1: 点击右侧按钮一次,就让图片滚动一张
功能2: 点击右侧按钮,小圆圈跟随变化
功能3: 实现左侧按钮功能
功能4: 被点击小圆圈高亮,并且滚动到对应图片
功能5: 点击某个小圆圈,再点击左侧按钮或右侧按钮,解决图片跟小圆点对应不上问题
功能6: 自动播放功能(鼠标移上轮播图层以后停止定时器,鼠标移出轮播图层以后重新开启定时器)
功能7: 防止轮播图左右按钮连续点击造成播放过快,添加节流阀功能

手动触发事件

// 手动触发指定DOM对象的指定事件 // 语法一 // DOM对象.事件类型()
可以手动触发传统绑定以及addEventListener绑定的事件 oDiv.click();

// 语法二 可以手动attachEvent方式监听的事件
//调用document对象的createEventObject方法得到一个event的对象实例。 var event =
document.createEventObject(); //触发oDiv上绑定的自定义事件onclick
oDiv.fireEvent(‘onclick’, event);

// 语法二 可以手动attachEvent方式监听的事件
//调用document对象的createEventObject方法得到一个event的对象实例。 var event =
document.createEventObject(); //触发oDiv上绑定的自定义事件onclick
oDiv.fireEvent(‘onclick’, event);

举例:
在这里插入图片描述

节流阀(节流函数) 见下篇

目标:防止轮播图按钮连续点击造成播放过快。
节流阀目的:当上一个函数动画内容执行完毕,再去执行下一个函数动画,让事件无法连续触发。
核心实现思路:利用回调函数,添加一个变量来控制,锁住函数和解锁函数。

开始设置一个变量


var flag= true;
if(flag){
    flag = false;// 关闭水龙头
    do something
}       
利用回调函数动画执行完毕, 
flag = true;     //打开水龙头


结语

个人学习笔记,如有错解,劳烦指正

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设计一个webapis学生报名系统的代码步骤如下: 1. 数据库设计:首先确定需要存储的数据,例如学生的基本信息,课程信息等。根据需求设计数据库表结构,并创建相应的表。 2. 后端接口设计:根据系统需求,设计后端接口,包括学生信息的录入、查询、修改和删除等功能。使用合适的编程语言,如Java、Python等,实现这些接口。 3. 前端界面设计:设计一个用户友好的前端界面,包括学生报名表单和查询功能。使用HTML、CSS、JavaScript等技术实现界面的布局和交互,确保用户能够方便地输入和查询信息。 4. 前后端交互:通过AJAX或其他技术,实现前后端的数据交互。前端向后端发送请求,后端处理请求并返回相应的数据。 5. 学生信息录入:在前端界面设计好的报名表单中,用户输入个人信息,通过调用后端接口将数据传递到后台。后台接收并验证输入的数据,并将学生信息存储到数据库中。 6. 学生信息查询:在前端界面设计好的查询功能中,用户输入需要查询的条件,通过调用后端接口将查询条件传递到后台。后台根据查询条件在数据库中查找匹配的学生信息,并将查询结果返回给前端。 7. 学生信息修改和删除:在前端界面设计好的修改和删除功能中,用户选择需要修改或删除的学生信息,并通过调用后端接口将相应的操作请求传递到后台。后台根据请求进行相应的操作,更新或删除数据库中的对应数据。 8. 错误处理和数据校验:在整个系统设计过程中,需要考虑错误处理和数据校验。在后端接口中,对输入的数据进行合法性检查,确保输入的数据符合要求。在前端界面中,对用户的输入进行格式验证,及时反馈给用户。 9. 安全性保障:为了保障系统的安全性,可以采用身份认证、权限控制等机制,确保只有授权的用户能够进行报名和查询等操作。 10. 测试和部署:在完成系统开发后,进行系统的测试和调试。确保系统的正确性和稳定性。最后将系统部署到服务器上,供用户使用。 以上是一个简单的webapis学生报名系统代码步骤,具体实现还需要根据具体需求进行调整和完善。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值