Ben*_*yer 3 javascript jquery svg canvas kineticjs
我创建了一个小型KineticJS动画,你可以在这个地址看到:
http://sandbox-ben.kimbiaservices.com/kineticjs/index.html
我想找到一种方法,让这个动画始终设置为窗口宽度的100%.(它将是另一个元素的"背景"区域.)
我可以通过将jQuery中的宽度设置为$(window).width()来做初始设置(可能有其他方法可以做到这一点,但jQuery已经被使用了),但我无法弄清楚如何重绘/在调整大小或方向更改时重置舞台.
那么,有没有办法做以下任何事情来实现这一目标:
我想我找到了解决方案.尝试检测的问题.on('resize')是,调整窗口大小的行为会导致事件触发数十万次,从而拖延浏览器.
灵感来自这个答案:检测何时使用JavaScript调整窗口大小? - 我能够创建一个jQuery事件,可以检测(或多或少)调整大小的时间.完成后,我清空容器元素并重新启动初始绘制脚本.下面的代码可以解决问题:
$(window).on('resize',function(){
if(this.resizeTO) clearTimeout(this.resizeTO);
this.resizeTO = setTimeout(function(){
$(this).trigger('resizeEnd');
},500);
});
$(window).on('resizeEnd orientationchange',function(){
$('#container').empty();
RunHeaderAnim();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2630 次 |
| 最近记录: |