首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Focus on input同时触发'focus‘和'select’事件

Focus on input同时触发'focus‘和'select’事件
EN

Stack Overflow用户
提问于 2016-10-28 16:07:20
回答 1查看 1.1K关注 0票数 3

我正在编写一个与事件紧密绑定的Javascript脚本。我必须在“焦点”事件上执行一些指令,在“选择”事件上执行一些不同的指令。令我惊讶的是,我发现以编程方式给出焦点,也会触发'select‘事件!这是个大问题。

你能告诉我为什么会发生这种情况吗?是否只有当我以编程方式给出焦点时,我才能以编程方式阻止select事件?

请参见以下示例。当点击‘给予焦点’按钮时,控制台会写上‘你选择了什么’!

代码语言:javascript
复制
<!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
    </head>
    <body>

        <input id="field" type="text" />
        <a href="#" id="btn">Give focus</a>

    <script>
        $(document).ready(function () {
            $('#field').on('select', function(e) {
                console.log('You selected something');
            });
            $('#btn').on('click', function(e) {
                $('#field').focus();
            })
        });
    </script>

    </body>
    </html>

EN

回答 1

Stack Overflow用户

发布于 2016-10-28 16:21:47

试试这个:

代码语言:javascript
复制
$(document).ready(function () {
        $('#field').on('select', function(e) {
            console.log('You selected something');
        });
        $('#btn').click( function(e) {
       
            $('#field').focus();
        })
    });
代码语言:javascript
复制
 <input id="field" type="text" />
    <a href="#" id="btn">Give focus</a>
   <script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40300713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档