Gab*_*iel 4 html events javascript-events
我正在尝试检测onresize事件何时在浏览器中结束.如果我使用"onresize"事件,在Firefox中它似乎只在调整大小事件结束后被触发一次,这正是我想要的.但是如果我在IE中尝试,"onresize"事件会在调整大小期间多次触发.
我也尝试在MSDN上做广告的"onresizeend"事件.但它似乎根本没有被解雇,无论是在FF还是在IE中.我使用以下代码:
<html>
<head>
<script>
<!--
function doLog(message)
{
document.getElementById("log").innerHTML += "<br/>" + message;
}
function doResize()
{
doLog("plain resize");
}
function doResizeEnd()
{
doLog("resize end");
}
-->
</script>
<style>
<!--
#log {
width: 400px;
height: 600px;
overflow: auto;
border: 1px solid black;
}
-->
</style>
</head>
<body onresize="doResize();" onresizeend="doResizeEnd();">
<div id="log"/>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
任何想法为什么这不起作用?也许不支持"onresizeend"事件?在这种情况下,如何检测调整大小事件何时结束?
谢谢.
只有内容可编辑对象才能包含在控件选择中.您可以通过将contentEditable属性设置为true或将父文档置于设计模式来使对象内容可编辑.
这就解释了为什么它不会为你开火.我怀疑你不想启用contentEditable,所以为什么不设置一个计时器.
var resizeTimer = 0;
function doResize()
{
if (resizeTimer)
clearTimeout(resizeTimer);
resizeTimer = setTimeout(doResizeEnd, 500);
}
Run Code Online (Sandbox Code Playgroud)
它并不完美,但希望会足够好.