奇怪的Chrome bug?

时间:2012-04-23 16:11:43

标签: google-chrome javascript-events

这个bug可能无法重现(编辑:所以我想)。我有一个带有onkeyup和oninput的textarea,当我ctrl-v将某些内容粘贴到textarea中时,它会被粘贴两次并且oninput事件会触发两次。使用鼠标上下文菜单粘贴工作正常。然后我将onkeyup的名称更改为onkeyup_以暂时避免它触发以查看更改,没有任何更改。然后我测试只是为了确保“onkeyup_”事件没有被触发; onkeyup _ =“alert('这不应该开火')”。现在,当我尝试将文本粘贴到textarea而不是获取文本时,我粘贴了文本“这不应该触发”而是显示在textarea中,警报没有创建警报窗口,而是转储它的参数进入textarea,很奇怪。

当使用ctrl-v粘贴时,文本会被添加两次并且oninput会触发两次,当使用鼠标上下文菜单粘贴时,文本只会出现一次。但现在出现了奇怪的部分,我完全删除了onkeyup_事件,但即使它不再存在于代码中,它也会继续触发!当我“检查元素”时,我确实确认警报代码不再在html中,但它一直在触发,并且它不断将其参数转储到textarea而不是在警报窗口中显示它。 Chrome如何执行不再存在的代码?它是否保留旧版本的某种副本,到目前为止我已做了很多更改,Chrome获得了该文件的新版本。为什么警报不按预期工作?

编辑: Phew,很难找到(我有很多代码),但这会重现Chrome上的错误,但在Firefox上工作正常:

<html>
<head>
<script>
function f(d){
alert(d.value);
}
</script>
<body>
<textarea name="commentBody" rows="8" cols="50" id="addVideo" oninput="f(this)" placeholder="Placeholder text..." style="margin-left: 0px; margin-right: 0px; width: 489px; margin-top: 5px; margin-bottom: 5px; height: 120px; "></textarea>
</body>
</html>

所以问题是提醒该领域的价值?为什么呢?

0 个答案:

没有答案