我正在尝试这段代码。它的作用是当有人右键单击第一个文本框时,将焦点转移到第二个文本框,这样如果他Paste
从上下文菜单中选择选项,文本就会粘贴到第二个文本框中。一个paste
事件已附加到第二个框以提醒Foo。
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$('.foo').contextmenu(function() {
$('.boo').select();
return true;
});
$(".boo").bind("paste",function() { alert("Foo"); });
});
</script>
</head>
<body>
<input type = 'text' class = 'foo' />
<input type = 'text' class = 'boo' />
</body>
</html>
它适用于除 Opera 之外的所有浏览器。当您右键单击并在第一个框中粘贴一些文本时,所有这些浏览器都会弹出警报。在 Opera 中,如果直接在第 2 个框中粘贴一些文本,就可以弹出警告。但是,如果您通过第一个框执行此操作,即在右键单击第一个框时将焦点转移到第二个框,以便剪贴板文本粘贴到第二个框,即使您可以清楚地看到它也不会弹出警报第二个框获得了焦点,文本被粘贴在那里就好了。谁能告诉我是什么问题,以及如何解决?