1

window.confirmを使用してChrome拡張機能/アプリinline installationをトリガーできますか?Chromeインラインプラグインをwindow.confirmにインストールする

実際にインラインインストールを開始するには、 chrome.webstore.install(URL、successCallback、failureCallback) 関数が呼び出さなければなりません。このファンクションは、ユーザーのジェスチャ(たとえば、クリックイベントハンドラ内)に対して という応答でのみ呼び出すことができます。それ以外の場合は 例外がスローされます。ドキュメントから

chrome.webstore.installユーザのジェスチャに応じて呼び出さなければなりません。ブラウザの確認用ポップアップを使用してそれを行うことはできますか?

if (confirm("Press a button!") == true) { 
 
    var app = 
 
    'https://chrome.google.com/webstore/detail/omcplobmjajgpmpcdnbdiblienjeljan'; 
 
    chrome.webstore.install(app, function() { 
 
    console.log('Success'); 
 
    }, function(errorMessage) { 
 
    console.log('Error: ' + errorMessage) 
 
    }); 
 
}
<link 
 
    rel="chrome-webstore-item" 
 
    href="https://chrome.google.com/webstore/detail/omcplobmjajgpmpcdnbdiblienjeljan" 
 
>

私が最初の場所で確認をトリガ何何の検証ドメイン

+0

最初に「確認」をトリガするのは何ですか?私はそれが重要な部分だと思います。あらかじめユーザーとのやりとりなしで確認をポップアップすると、うまくいくかどうかわかりません。 – Xan

+0

あなたは、ボタンクリック(例えば)で確認する必要がありますか? –

+0

なぜあなたはconfirm()を使用していますか? –

答えて

1

を持っていないので、私は、それを自分自身をテストすることはできませんか?私はそれが重要な部分だと思います。あらかじめユーザーとのやりとりなしで確認をポップアップすると、うまくいくかどうかわかりません。

私はユーザーのジェスチャー要件を理解する限り、これは「ユーザージェスチャーによってトリガーされるイベントリスナーのコンテキストで」を意味します。モーダルからの応答はそのようなリスナーではありません。 注:これは推測ですが、私はそれをテストしていません。

インラインインストールが(例えば、マウスクリック)ユーザのジェスチャを介してトリガされなければならないので、それゆえを使用すると、ボタンなどのクリック可能なユーザインタフェース要素にアクションを結びつけることが示唆されます。 Chromeウェブストアと同じボタンラベルを使用することをお勧めします(英語では、これは「Chromeに追加」です)。

ドキュメントは、明示的でなくても、DOM要素を参照します。

実際には、ダイアログを表示する前にユーザーのジェスチャーなしで作業している場合、ユーザーはconfirmとの対話を避ける方法がないため、バグがあると考えています。

+1

はい、* userジェスチャー*によって呼び出された関数で* confirm *が有効な場合のみ機能します。 –

関連する問題