在Opera中按Ctrl + Enter(单击)避免使用新选项卡

时间:2012-10-29 14:15:49

标签: javascript tabs opera enter ctrl

有很多网站使用 Ctrl + Enter 发送网络表单。 但在Opera中,自11.50 build 1018以来,此热键将表单发送到新的背景选项卡。

Opera Next(12.50)甚至打开几个新的背景标签!
示例代码如下所示:

<form method="post" id="form">
    <textarea id="text"></textarea><br /><br />
    <input type="submit" value="submit" id="submit" /> 
</form>

<script type="text/javascript">
    $(document).ready(function(){
        $('#text').keypress(function(event){
            if (event.ctrlKey && (event.which == 10 || event.which == 13)) {
                event.preventDefault();
                event.stopPropagation(); 
                event.ctrlKey = false;
                $('#submit').click();
            }
        });

        $("#submit").click(function(event){
            event.ctrlKey = false;
        });
    });
</script>

查看http://jsfiddle.net/8pYsv/

的链接

我该如何避免这种行为?作为Opera用户,不是作为网站管理员。

Opera中没有配置选项 Ctrl 点击event.ctrlKey = false;无效。

仅将$("#submit").click()替换为$("#form").submit()会有所帮助。

但是有许多网站不会仅为Opera改变他们的代码..

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可以在Opera的设置中更改键组合:

Ctrl-F12 
-> Shortcuts
-> Keyboard Setup 
-> Edit 
-> Type 'background'
-> Edit or delete the desired key combination.