【解決方法】戻るときはJavaScriptを無効にする


こんにちは、私は Chrome 拡張機能を使用しています。 アプリケーションまたはブラウザに戻ったときに、このスクリプトを無効にすることはできますか?

JavaScript
clickme = document.querySelector('[title="Stampa etichette"]');
  if (clickme) {clickme.click()};

どうもありがとう!

私が試したこと:

私はこの機能を無駄に試しましたが、推奨されていません:

JavaScript
if (performance.navigation.type != 2)
{  clickme = document.querySelector('[title="Stampa etichette"]');
  if (clickme) {clickme.click()};
}

解決策 1

アプリケーションまたはブラウザーに戻ったときにスクリプトを無効にするには、performance.navigation.type プロパティを使用して、発生したナビゲーションの種類を確認します。 ナビゲーション タイプが 2 の場合は、ユーザーがアプリケーションまたはブラウザーに戻ったことを意味します。 この場合、title属性が「Stampa etichette」に設定された要素をクリックするスクリプトの実行をスキップできます。

これを行う方法の例を次に示します。

if (performance.navigation.type !== 2) {<br />
  // select the element to click<br />
  const clickme = document.querySelector('[title="Stampa etichette"]');<br />
  // if the element exists, click it<br />
  if (clickme) {<br />
    clickme.click();<br />
  }<br />
}<br />

performance.navigation プロパティとその type プロパティは非推奨であり、新しいコードでは使用しないでください。 代わりに、history.state プロパティを使用して、ユーザーがアプリケーションまたはブラウザーに戻ったかどうかを確認できます。

これを行う方法の例を次に示します。

if (!history.state) {<br />
  // select the element to click<br />
  const clickme = document.querySelector('[title="Stampa etichette"]');<br />
  // if the element exists, click it<br />
  if (clickme) {<br />
    clickme.click();<br />
  }<br />
}<br />

これにより、history.state プロパティが null であるかどうかがチェックされます。これは、ユーザーがアプリケーションまたはブラウザーに戻ったことを示します。 history.state プロパティが null の場合、スクリプトは実行されません。

コメント

タイトルとURLをコピーしました