<html>
<head>
<script>
function addEvent( obj, type, fn ) {
if ( obj.attachEvent ) {
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
obj.attachEvent( 'on'+type, obj[type+fn] );
} else
obj.addEventListener( type, fn, false );
}
</script>
</head>
<body>
<!-- HTML for example event goes here -->
<div id="mydiv" style="border: 1px solid black; width: 100px; height: 100px; margin-top: 10px;"></div>
<script>
// Script for example event goes here
addEvent(document.getElementById('mydiv'), 'contextmenu', function(event) {
display_short('right-clicked (contextmenu)');
});
function display_short(str)
{
clearTimeout();
document.getElementById('mydiv').innerHTML = str;
if (str != '')
alert("hello");
setTimeout("display_short('abcd')", 1000);
}
</script>
</body>
</html>
右键单击div区域时,在IE和FF中表现不同。在ff display_short将被调用evry 1秒,尽管你没有发布右键单击,但在IE中,如果你不发布右击,它将不会调用display_short。
但我希望在IE中它应该每1秒调用一次display_short,如果你也不释放的话。 对此有什么解决方案吗?
答案 0 :(得分:0)
var i; i = 0; 函数循环() { i = i + 1; 警报(字符串(I)); 的setTimeout( “循环()”,1000); } 的setTimeout( “循环()”,1000);
你好
请在IE8中尝试以上代码,在您不发布右键单击之前,它不会发出警告消息。
但是在Firefox中,即使您没有发布右键,也会发出提示信息。
我想在IE8中使用firefox功能。