使用 jQuery animate 时绘制一个又一个对象的线条
Drawing line after object while using jQuery animate
我有这个正方形,它每 5 秒动画到一个随机位置。我现在想做的是在正方形移动时在正方形之后画一条线,这样我就可以看到它在哪里等等。任何想法我应该怎么做?非常感谢帮助,谢谢!
<div id="square" style="width:50px; height:50px; background:blue; position:relative;"/>
<script>
$(document).ready(function(){
setInterval(function(){
var posx = Math.floor((Math.random()*1000)+1);
var posy = Math.floor((Math.random()*1000)+1);
$('#square').animate({ left:(posx*1), top: (posy*1) }, 3000);
},5000);
});
</script>
下面是一个例子。它并不漂亮,但应该让你开始。
http://jsfiddle.net/9gcXN/
.HTML
<canvas width="500" height="500" id="mycanvas" style="position: absolute; left: 0px; top: 0px;"></canvas>
<div id="square" style="width:50px; height:50px; background:blue; position: absolute;"></div>
.JS
canvas = document.getElementById('mycanvas');
ctx = canvas.getContext('2d');
$(document).ready(function() {
var posx,posy,lastx,lasty = 0;
setInterval(function(){
lastx = posx;
lasty = posy;
posx = Math.floor((Math.random()*100)+1);
posy = Math.floor((Math.random()*100)+1);
$('#square').animate({ left:(posx*1), top: (posy*1) }, 3000, function() {
ctx.beginPath();
ctx.moveTo(lastx,lasty);
ctx.lineTo(posx,posy);
ctx.stroke();
});
},3000);
});
希望对您有所帮助!
你可以对 jQuery.animate() 使用一个 step 函数。
$(document).ready(function(){ setInterval(function(){
var posx = Math.floor((Math.random()*1000)+1);
var posy = Math.floor((Math.random()*1000)+1);
$('#square').animate({ left:(posx*1), top: (posy*1) }, {
duration: 3000,
step: function (now, tween) {
var elemOffset = $(tween.elem).offset();
$('<div class="a"></div>').css({top: elemOffset.top, left: elemOffset.left}).appendTo('body');
}
});
},5000);});
我在jsfiddle上的例子:
http://jsfiddle.net/g7xGy/
相关文章:
- 节点导出返回一个空对象
- Javascript,访问一个主要对象模块模式中的每个对象
- 替换另一个变量对象中的变量值
- 获取一个javascript对象attr's
- 代码挑战:创建一个跟踪对象实例总数的类Foo
- 使用来自不同异步函数的响应创建一个json对象
- Node.js-chai是一个item对象
- 想要使用Javascript将一个JSON对象拆分为多个JSON对象
- JSON:在另一个JSON对象中重用JSON对象
- 如何查找流星集合中最后一个元素/对象的id
- 从分析类传递现有对象,否则创建一个新对象
- 是我的第三方JavaScript返回html还是只是一个空对象
- 为什么在JavaScript中可以从另一个日期对象中减去日期对象
- 如何上传一个XML对象并用Perl将其保存在服务器上
- $scope$观察数组中的一个特定对象——Angular JS控制器
- 将一个javascript对象推送到另一个javascript对象中
- Javascript:使用一个预先存在的对象值作为一个新对象的键
- I'我在页面加载时将整个$_SESSION变量放入一个json对象中.虽然这对我有效,但这是一个好的做法吗
- 如何使用Typescript创建一个包含对象的字段的新对象
- 如何在 Perl 中打开一个 JavaScript 对象