推荐8款HTML5相关的特殊效果 看看都能够实现哪些功能

推荐8款HTML5相关的特殊效果 看看都能够实现哪些功能,第1张

HTML5是HTML的升级版,HTML5有两大特点:首先,强化了 Web 网页的表现性能。其次,追加了本地数据库等 Web

应用的功能。广义论及HTML5时,实际指的是包括HTML、CSS和JavaScript在内的一套技术组合。今天我们推荐8款使用HTML5生成的特

效果,希望可以对大家的使用带来帮助!

HTML5实现的五子棋游戏

在线演示

这是一款使用HTML5实现的五子棋特效,与计算机的对局你不见得能次次都赢得胜利,不信可以点击在线演示。

一款不需要视频文件的视频播放器-Frame player

在线演示

HTML5视频是非常棒的,它可以很容易的用在多款设备上。但是它也有自己的问题,比如移动设备的播放器,可能有不同版本不兼容的情况。今天我们介绍这款视频播放器完善了之前的效果,用起来更方便。希望大家喜欢!

3D菜单

在线演示

或许在现如今这个科技发达的时代,在线点餐已不是新鲜事。餐厅可以对Menu进行设计,点击菜名会相应d出菜品的照片,或者还可以增加卡路里,原材料和客户们的评价等。绝对是一个超时髦的创意!

用HTML5的画布实现撕布的动画效果

在线演示

用HTML5的画布实现撕布的效果,滑动鼠标,布会随着鼠标变动。点击鼠标左键,然后滑动鼠标,布就会被割开。如果你还没有查看过这款演示效果,那绝对逼真的让你震撼!

HTML5 Canvas(画布) 基础使用和介绍

在线下载

还记得在过去的Web前端开发中,如果你需要绘图或者生成相关图形的话,使用Flash可能是你唯一或者说最强大的实现方式,而在近些年的技术

热点HTML5标准中,HTML

Canvas(画布)能够更加方便的帮助你实现2D绘制图形图像及其各种动画效果功能。在今天的这篇技术教程中我们将介绍基本的Canvas使用,希望大

家觉得有帮助!

HTML5画布生成的2D光源效果

在线演示

超金属的背景,仿佛探照灯的经过让他看上去更加的立体。这是一款使用HTML5 Canvas生成的2D光源效果。绝对让你不后悔使用它!

HTML5的Flappy bird实现

在线演示

著名的Flappy Bird,相信知道的人一定不少吧,点击你的空格,不要让它掉下来,看看你最终的成绩有多好。发上来我们切磋一下吧.

Sonic - 循环加载的利器

在线演示1 在线演示2 在线演示3

Sonic是一个不到3k,非常小的JS类库,你可以用这个类库来创建自定义的加载动画。它的循环动画效果非常赞,比如你可以用它做一条不断追

逐自己尾巴

的蛇,这样的动画。Sonic使用了HTML5的canvas元素和其相关API。它基于在一定小的时间间隔上,基于预定义的路径,画出下一个形状,从而

完成动画效果。你可以使用arc,bezier,或line的方法来定义路径。

html5:

用于绘画的 canvas 元素

用于媒介回放的 video 和 audio 元素

对本地离线存储的更好的支持

新的特殊内容元素,比如 article、footer、header、nav、section

新的表单控件,比如 calendar、date、time、email、url、search

css3:

1. CSS3实现圆角(border-radius),阴影(box-shadow),

2.对文字加特效(text-shadow、),线性渐变(gradient),旋转(transform)

3.transform:rotate(9deg) scale(0.85,0.90) translate(0px,-30px) skew(-9deg,0deg)// 旋转,缩放,定位,倾斜

4.增加了更多的CSS选择器 多背景 rgba

5.在CSS3中唯一引入的伪元素是 ::selection.

6.媒体查询,多栏布局

7.border-image

主要思想:

首先要准备一张有连续帧的图片,然后利用HTML5 Canvas的draw方法在不同的时间间隔绘制不同的帧,这样看起来就像动画在播放。

关键技术点:

JavaScript 函数setTimeout()有两个参数,第一个是参数可以传递一个JavaScript方法,

另外一个参数代表间隔时间,单位为毫秒数。代码示例:

setTimeout( update, 1000/30)

Canvas的API-drawImage()方法,需要指定全部9个参数:

ctx.drawImage(myImage, offw, offh, width,height, x2, y2, width, height)

其中offw, offh是指源图像的起始坐标点,width, height表示源图像的宽与高,x2,y2表

示源图像在目标Canvas上的起始坐标点。

<!DOCTYPE html> 

<html> 

<head> 

<meta http-equiv="X-UA-Compatible" content="chrome=IE8"> 

<meta http-equiv="Content-type" content="text/htmlcharset=UTF-8"> 

<title>Canvas Mouse Event Demo</title> 

<link href="default.css" rel="stylesheet" /> 

<script> 

var ctx = null // global variable 2d context 

var started = false 

var mText_canvas = null 

var x = 0, y =0 

var frame = 0 // 22 5*5 + 2 

var imageReady = false 

var myImage = null 

var px = 300 

var py = 300 

var x2 = 300 

var y2 = 0 

window.onload = function() { 

var canvas = document.getElementById("animation_canvas") 

console.log(canvas.parentNode.clientWidth) 

canvas.width = canvas.parentNode.clientWidth 

canvas.height = canvas.parentNode.clientHeight 

if (!canvas.getContext) { 

console.log("Canvas not supported. Please install a HTML5 compatible browser.") 

return 

// get 2D context of canvas and draw rectangel 

ctx = canvas.getContext("2d") 

ctx.fillStyle="black" 

ctx.fillRect(0, 0, canvas.width, canvas.height) 

myImage = document.createElement('img') 

myImage.src = "../robin.png" 

myImage.onload = loaded() 

function loaded() { 

imageReady = true 

setTimeout( update, 1000/30) 

function redraw() { 

ctx.clearRect(0, 0, 460, 460) 

ctx.fillStyle="black" 

ctx.fillRect(0, 0, 460, 460) 

// find the index of frames in image 

var height = myImage.naturalHeight/5 

var width = myImage.naturalWidth/5 

var row = Math.floor(frame / 5) 

var col = frame - row * 5 

var offw = col * width 

var offh = row * height 

// first robin 

px = px - 5 

py = py - 5 

if(px < -50) { 

px = 300 

if(py < -50) { 

py = 300 

//var rate = (frame+1) /22 

//var rw = Math.floor(rate * width) 

//var rh = Math.floor(rate * height) 

ctx.drawImage(myImage, offw, offh, width, height, px, py, width, height) 

// second robin 

x2 = x2 - 5 

y2 = y2 + 5 

if(x2 < -50) { 

x2 = 300 

y2 = 0 

ctx.drawImage(myImage, offw, offh, width, height, x2, y2, width, height) 

function update() { 

redraw() 

frame++ 

if (frame >= 22) frame = 0 

setTimeout( update, 1000/30) 

</script> 

</head> 

<body> 

<h1>HTML Canvas Animations Demo - By Gloomy Fish</h1> 

<pre>Play Animations</pre> 

<div id="my_painter"> 

<canvas id="animation_canvas"></canvas> 

</div> 

</body> 

</html>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6176819.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-17
下一篇 2023-03-17

发表评论

登录后才能评论

评论列表(0条)

保存