调整窗口大小时重新加载JavaScript动画

时间:2016-10-29 18:50:06

标签: javascript html

我使用three.js在3D中制作了一个javascript动画,我想在调整窗口大小时重新加载页面或动画,所以尝试了:

window.addEventListener('resize', function(event){
    window.location.reload(true);
}); 

但它不起作用......我需要帮助

(我是javascript的初学者)

1 个答案:

答案 0 :(得分:1)

由于您尝试在窗口调整大小时调用此函数,因此您需要将函数绑定到窗口而不是文档。要支持小于9的IE版本,您需要使用$timeout(()=>{}, 100000000000000000。请注意,attachEvent要求您指定attachEvent关键字。这是一个例子:

P.s。:如果您想要准确答案,您应该提供有关您的浏览器和版本的更多信息。

on

同样,您可以以相同的方式删除事件

if(window.attachEvent) {
    window.attachEvent('onresize', function() {
        alert('attachEvent - resize');
    });
}
else if(window.addEventListener) {
    window.addEventListener('resize', function() {
        console.log('addEventListener - resize');
    }, true);
}
else {
    //The browser does not support Javascript event binding
}

Source

页面重新加载对所有浏览器都不一样。因此,您还应该查看这些页面重新加载示例。 Javascript 1.0

if(window.detachEvent) {
    window.detachEvent('onresize', theFunction);
}
else if(window.removeEventListener) {
    window.removeEventListener('resize', theFunction);
}
else {
    //The browser does not support Javascript event binding
}

Javascript 1.1

window.location.href = window.location.pathname + window.location.search + window.location.hash;
// creates a history entry

Javascript 1.2

window.location.replace(window.location.pathname + window.location.search + window.location.hash);
// does not create a history entry

Source