我有一个以前从未遇到的问题。
当移动设备更改为方向时,我想调用一个函数,所以我使用“onorientationchange”并确保它被触发,我也使用“onresize”。
问题是因为一个神秘的原因甚至不能在页面上工作:
如果我这样做
document.body.addEventListener("resize",function(){console.log("here")};
它不起作用,我创建了一个自定义版本的AddEventListener:
function addNewEvent(elementDOM, evenement, fonction){
var refEvent = null;
if(elementDOM)
{
elementDOM["on"+evenement] = fonction;
if (elementDOM.attachEvent)
{
refEvent =function() {
return fonction.call(elementDOM,window.event);
};
elementDOM.attachEvent ('on'+evenement,refEvent);
}
else if (elementDOM.addEventListener)
{
refEvent = fonction;
elementDOM.addEventListener (evenement,refEvent,false);
}
else
{
elementDOM["on"+evenement] = fonction;
}
}
return refEvent;
},
即使这个也行不通......
但这有效:
document.body.onresize = function(){console.log("here")};
这是一个普通的网页,我不明白为什么它不起作用。
你能帮忙吗? :X答案 0 :(得分:5)
resize
个事件触发window
个对象,而不是body
元素。
你正在错误的地方听它。
window.addEventListener("resize",function(e){console.log("here", e.target)};