0

我编写了以下代码来提示用户文本框的内容,以便他们轻松复制数据。它适用于可能不知道如何复制文本的非 IT 精通用户(我们得到了他们......)

    $('#saveBox').focusin(function(){
        var text = $('#saveBox').val();
        window.prompt ("Copy to clipboard: press Ctrl+C and then Enter to close", text);
    });

但是,这似乎创建了一个循环,每次用户关闭该框时,它都会再次弹出。

有没有办法只在用户第一次点击文本区域时打开提示?

4

1 回答 1

1

一种简单的方法是仅在第一次使用布尔变量来执行此操作,例如以下示例:

firstTime = true

$('#saveBox').focusin(function(){
    if(firstTime){
        var text = $('#saveBox').val();
        window.prompt ("Copy to clipboard: press Ctrl+C and then Enter to close", text);
        firstTime = false;
    }
});

没有布尔值:

$('#saveBox').one("focusin", function(){
    if(firstTime){
        var text = $('#saveBox').val();
        window.prompt ("Copy to clipboard: press Ctrl+C and then Enter to close", text);
    }
});
于 2013-04-21T16:57:05.497 回答