Javascriptで長押しをシミュレートする 質問する

Javascriptで長押しをシミュレートする 質問する

ユーザーがフィールドをクリックすると、その中のテキストがハイライト表示されてコピーできる Web アプリがあります。ただし、Android では、これによってコピー コンテキスト メニューが開かれることはないため、ユーザーが自分でテキストを選択する必要があります。

モバイル ブラウザーにコピー/貼り付けコンテキスト メニューが表示されるように、長押しイベントをプログラムでトリガーする方法はありますか?

ベストアンサー1

次の例は、Android の長押しをエミュレートします。長押し後のアクションを setTimeout 内に配置します。

    var timer;
    //Time of the long press
    const tempo = 1000; //Time 1000ms = 1s
    const mouseDown = () => {
        timer = setTimeout(function(){ 
                //Insert your function here
                alert("Your Function Here!");
        }, tempo);
    };
    const mouseUp = () => {
        clearTimeout(timer);
    };
<p ontouchstart="mouseDown()" ontouchend="mouseUp()" onmousedown="mouseDown()" onmouseup="mouseUp()">Long Touch Me!</p>

おすすめ記事