最新回答 / feiger
var ball1 = document.querySelector('.ball1'); var ball2 = document.querySelector('.ball2'); var ball3 = document.querySelector('.ball3'); function animate(ball,distence,cb){ setTimeout(function(){ alert(1) //為什么alert不執行? var marginLeft = parseInt(ba...
2016-11-04
最贊回答 / 淹死的魚_
我的理解是:你會看到前面只是定義了一個函數_animate(),你要知道函數本身并不會自己就會執行。所以我們在外面多寫一個_animate()是為了讓函數第一次執行。至于這里為什么要定義一個_animate()函數。這里是對顏色塊進行位移的功能封裝成函數_animate(),而函數本身的功能其實是只能位移一個像素,要位移100個像素怎么辦?很簡單 迭代自己就行了,所以你會看到 _animate()函數里面自己調用自己。而要迭代自己,當然定義一個具名函數會更好處理啦。不然匿名函數 你能自己調用自己嗎?
2016-10-23
最贊回答 / 慕斯卡2154061
<!DOCTYPE html><html lang="en"><head> ? ?<meta charset="UTF-8"> ? ?<title>ball animation</title> ? ?<script src="node_modules/bluebird/js/browser/bluebird.js"></script> ? ?<style> .ball{ ? ? ? ? ? ?wid...
2016-10-23
最新回答 / 慕前端3377544
我覺得應該是只要有數據傳輸,就會觸發data事件,開始沒有是文件比較小 ,小于一次傳輸的量(一次傳輸的大小約為64kb),所以只有一次,而加了暫停和重啟就會 在重啟時會再次觸發 data 事件,所以就打印了兩次
2016-10-21
最新回答 / 慕粉1459421150
我也不是很理解,難道第一個球跑到位置了,沒有對其釋放,然后又一次執行到這個任務了,就會發生兩個任務在競爭,最后一直卡在這個timer里面沒出來?
2016-10-17