标签: html5-animation

画布弧清除

如何覆盖HTML5画布弧?我推测这段代码可以正常工作,但它留下了一个边框,尽管事实上它的值完全相同,只是一个不同的颜色..是否有一个我不知道的边界属性?

<!DOCTYPE html>
<html>
  <head>
    <title>Test</title>
  </head>
  <body>
  <canvas id="surface" width="300" height="300"></canvas>

  <script type="text/javascript">
      var canvas = document.getElementById('surface');
      var ctx = canvas.getContext('2d');

      ctx.fillStyle = 'black';
      ctx.beginPath();
      ctx.arc(100, 100, 20, 0, Math.PI * 2, true);
      ctx.fill();

      ctx.fillStyle = 'white';
      ctx.beginPath();
      ctx.arc(100, 100, 20, 0, Math.PI * 2, true);
      ctx.fill();
  </script>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript html5 canvas html5-animation

6
推荐指数
1
解决办法
5619
查看次数

HTML5中的旋转轮图像(例如轮盘赌轮)?

在HTML5中模拟旋转轮盘的最佳方法是什么?

车轮旋转应该可以通过一些输入来控制(即,基于一些用户输入的旋转速度).当车轮快速旋转时,车轮标签应该模糊,但随着旋转速度减慢,车轮上的标签变得越来越可读.

是否有HTML5库支持这一点,或者动画是否需要手动编程?

这也需要在iOS设备上支持.

javascript iphone html5 html5-animation html5-canvas

6
推荐指数
2
解决办法
7万
查看次数

HTML5 Canvas动画使用88-98%的CPU

我正在尝试为世界的虚假像素化地图制作动画,以便它在不同颜色之间平滑过渡.我原来用jquery和表做了这个,但cpu使用率非常高,所以我想我会尝试使用html5 canvas.但是,我仍然获得非常高的CPU使用率.我想知道它是否是代码中的大数组(我用它来表示应该填充正方形的位置).任何帮助将深表感谢.

<!DOCTYPE html>
<html>
<head>
    <title>canvas version</title>
    <script src="raphael.js"></script>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
</head>
<body>
<div id="canvasesdiv" style="position:relative; width:864px; height:456px">
    <canvas id="world-map" width="864" height="456" style="position:absolute; left:0px; top:0px; z-index:1;">
    </canvas>
    <canvas id="backdrop" width="864" height="456" style="position:absolute; left:0px; top:0px; z-index:0;"></canvas>
    <script type="text/javascript">
        //declare vars
        var ctx1
        var ctx2
        var layer1
        var layer2
        var red = 255;
        var dr = 1;
        //initialization
        function init() {
            layer1 = document.getElementById("backdrop");
            ctx1 = layer1.getContext("2d");
            //layer2 = document.getElementById("world-map");
            //ctx2 = layer2.getContext("2d");
            drawMap(red);
            setInterval(function(){red = drawMap(red);},1);
            }

            //LOOP THROUGH …
Run Code Online (Sandbox Code Playgroud)

canvas cpu-usage html5-animation

5
推荐指数
2
解决办法
6371
查看次数

很多HTML画布或一个大画布?

我正在计划一个界面来显示许多小部件(在a上绘制<canvas>),这些部件可能会移动(例如,在使用jQuery以不同方式排序的列表中).小部件的数量可以是10到100之间的任何值.

我可以用一个大画布做到这一点,只需在正确的位置绘制许多小部件.或者我可以<canvas><li>s中有很多ses .帆布的重量是否足以满足这类需求?是否有令人信服的表现理由选择其中一个?

html html5 canvas html5-animation

5
推荐指数
1
解决办法
142
查看次数

HTML5画布的素描效果

我有一张由手绘的城市轮廓组成的 JPEG 图像。我想实现从左到右在空白区域上绘制这些轮廓的缓慢草图效果。如何基于 HTML5 canvas 元素做到这一点?例如将此 JPEG 导入画布并在其上应用一些动画蒙版,或者将 JPEG 重新分解为一组曲线(如果可能的话,我想获得适当工具的列表)并使用简单愚蠢的 ctx.lineTo(...) 和其他曲线函数。

先感谢您。

html javascript canvas html5-animation

5
推荐指数
1
解决办法
2141
查看次数

CSS3同一元素的多个转换

我正在尝试为我的一个背景图像制作下拉效果.我能够使用css3做到这一点,但它并不完整.

效果应该是一个下降的窗帘,然后有点反弹.css3的问题在于我不知道如何对同一属性进行转换,因为最后一个会覆盖以前的属性.

这是我的代码:

ul#nav li a {
  /* ADDS THE DROPDOWN CURTAIN TO THE LINKS BUT HIDDEN OFF SCREEN */
  background: url(images/drape2.png) 0px -149px no-repeat;
  /* CSS3 transitions */         
  -moz-transition: all 200ms ease-in-out;         
  -webkit-transition: all 200ms ease-in-out;         
} 

ul#nav li a:hover {            
  /* Action to do when user hovers over links */                          
  background-position: 0px 0px; /* make drape appear, POOF! */             
  background-position: 0px -10px; /* make drape appear, POOF! */             
}            
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激.

html javascript css css3 html5-animation

5
推荐指数
2
解决办法
4628
查看次数

带有画布的HTML5中的逐帧动画

我有一个flash动画我试图转换为HTML5.现在我已经取出了所有的图像.例如,在手动画中,我拍摄了所有手部图像.我用基础绘图制作了画布,但我不知道如何逐帧替换这些图像.

function draw(){
    var canvas = document.getElementById('canvas');
    if(canvas.getContext){
        // canvas animation code here:
        var ctx = canvas.getContext('2d');

        var lhs = new Image();

        lhs.src = "images/left_hnd_1.png";

        lhs.onload = function(){
            ctx.drawImage(lhs, 293, 137);
        }

    } else {
        // canvas unsupported code here:
        document.getElementById('girl').style.display = "block";
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我有三个这个图像的框架.left_hnd_2.png,left_hnd_3.png&left_hnd_4.png.我会使用一个图像,但帧的差异太大,无法用一个图像完成.如何根据我想要的时差来设置动画.

任何想法将不胜感激.谢谢!

html5 animation canvas html5-animation

4
推荐指数
1
解决办法
1万
查看次数

css3动画逐帧

我需要逐帧动画来改变元素的背景位置.我需要这样做而不用缓动或线性动画,只需改变背景位置即可.用css3动画可以实现吗?

css html5 css3 html5-animation

3
推荐指数
1
解决办法
2355
查看次数

如何在Canvas中识别形状?

如果我定义一个画布并在其上绘制几个形状,那么我如何精确定位每个形状或图像,以便在每个形状上声明事件和其他属性.考虑我有一个矩形和一个三角形.我可以有一些机制,以便将它们定义为特定实体,我可以单独处理它们.我知道KineticJS,但我想自己实现这个功能(用于学习目的).任何人都可以找到实现它的方法.或者可能是一种算法方法?

html5 html5-animation html5-canvas

3
推荐指数
1
解决办法
1729
查看次数

CSS3动态更改动画时的平滑过渡

我有两个关键帧动画"Bounce-In"和"Bounce-Out"Bounce-In动画需要1.2秒才能完成,但是如果用户在完成之前触发Bounce-Out功能,它将跳到100%的比例并且不会优雅地从它的当前动画位置向外扩展.

关键帧动画可以实现吗?我已经看到它完成了转换属性但没有使用scale().

@-webkit-keyframes Bounce-In 
{
0% { -webkit-transform: scale(0) }
40% { -webkit-transform: scale(1.0) }
60% { -webkit-transform: scale(0.7) }
80% { -webkit-transform: scale(1.0) }
90% { -webkit-transform: scale(0.9) }
100% { -webkit-transform: scale(1.0) }
}

@-webkit-keyframes Bounce-Out 
{
0% { -webkit-transform: scale(1.0) }
40% { -webkit-transform: scale(0.1) }
60% { -webkit-transform: scale(0.4) }
80% { -webkit-transform: scale(0.1) }
90% { -webkit-transform: scale(0.2) }
100% { -webkit-transform: scale(0) }
}
Run Code Online (Sandbox Code Playgroud)

我在JSFiddle上有一个演示:http://jsfiddle.net/Vn3bM/98/ *如果你在动画结束前单击"游戏"圈子,你会注意到另外两个跳到100%,然后动画出来(这就是什么我试图顺利).

我甚至尝试从Bounce-Out中移除0%关键帧,这没有帮助......

javascript css3 html5-animation css-transitions

3
推荐指数
1
解决办法
2941
查看次数

如何强制浏览器重绘并避免 UI 更新延迟?

我需要浏览器在长时间(er)操作完成之前更新我的 UI。目前浏览器正在等待一切完成后更新 UI,这意味着 UI 冻结 1-2 秒然后更新。

因此,用户单击 UI 中的按钮,然后执行此代码:

$('#mybutton').click(function(e) {

e.preventDefault();// prevent the default anchor functionality

$('#mainctrldiv').css('display', 'none');
$('#otherctrldiv').css('display', 'block');

var img = $('<img id="spareimg" style="display:none;">');
img.attr('src', canvas.getActiveObject().toDataURL()); // This is causing the delay!
img.appendTo('body');
}
Run Code Online (Sandbox Code Playgroud)

这是canvas.getActiveObject().toDataURL()(一个 FabricJS 函数)花时间。我希望这发生在 2 个 div 已经明显地显示给用户之后,他们没有注意到。需要它在所有常用浏览器中工作!(移动和桌面)。

研究表明,在设置后立即读取 css 显示属性会强制浏览器重新绘制,所以我在设置这些属性后直接添加了以下代码,但延迟仍然发生:

$('#mainctrldiv').css('display');
$('#otherctrldiv').css('display');
Run Code Online (Sandbox Code Playgroud)

非常感谢您的任何建议!

javascript css jquery html5-animation css-animations

0
推荐指数
1
解决办法
2681
查看次数

两种颜色之间的屏幕闪烁足够快,人眼无法想象

嗨我想要一个闪烁的屏幕,其中颜色在WebGL中的两种颜色之间变化.我有一个颜色的方块的代码设置,但无法想象如何使它以人眼无法想象的速度在两种颜色之间切换,比如说1KHz.在此先感谢,我是新来的.

javascript html5 webgl html5-animation

-1
推荐指数
1
解决办法
327
查看次数