問題タブ [tampermonkey]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - GreasemonkeyまたはTampermonkeyでiframeを除外するにはどうすればよいですか?
Webサイト用のGreasemonkeyスクリプトを作成しました。スクリプトが行うことは、ページの最後にdivを追加することです。
しかし、現在、サイトはgoogle-ads用のiframeを追加しています。その結果、私のdivもiframeに表示されますが、これは私が望んでいることではありません。
iframeに影響を与えるスクリプトを停止するにはどうすればよいですか?
javascript - ページの読み込みごとに 1 回だけ Greasemonkey スクリプトを実行しますか?
で Greasemonkey スクリプトを作成し、@include *
YouTube などのサイトにアクセスすると、更新するたびにスクリプトが 20 回以上実行されます。これはFirefox上であり、Chromeについてはわかりません。
これを防ぐ方法はありますか?
javascript - Greasemonkey (または同様のユーザー スクリプト エンジン) を使用して高速にリダイレクトしますか?
特定の URL を別の URL にリダイレクトするために Greasemonkey を使用していますが、リダイレクトする URL がロードされる前にリダイレクトしたいと考えています。
現在、私はこの単純なスクリプトを使用しています:
上記では、Google が 1 秒間表示された後、Google にリダイレクトされます。すぐにyahooに行きたいです。それは可能ですか?
javascript - アラート機能をユーザースクリプトで上書きするにはどうすればよいですか?
サイトにはそのようなコードがあります(LAN上のサイト)
GMを使用してそのアラートを無効にしようとしています。私はこれをやろうとしていました
しかし、アラートが表示され、このエラーが発生します
そのアラートを無効にする方法は?
PSこれはjavascriptの質問ではなく、Greasemonkeyの質問です。
編集:
その会社のウェブサイトなので、実際のコードを貼り付けることはできません
ヘッダーにはいくつかのスクリプトとCSS宣言もあります。
javascript - ユーザースクリプトで複数の AJAX 結果を処理するにはどうすればよいですか?
<textarea>
現在、Google Translation API を使用して、イントラネット アプリのフィールドを翻訳する Greasemonkey スクリプトを開発しています。
しかし、一部のテキストは大きすぎて 1 回のリクエストで翻訳することはできません。しようとすると、このエラーが発生します。
エンティティが大きすぎるリクエスト
とにかく、テキストを断片に切り取り、別々のリクエストで送信する方法を見つけました。それが難しいのは、元のテキストエリア、特に適切な場所でこれらのフラグメントをどのように置き換えるかです。
成功せずにいくつかの方法を試した後、翻訳する必要があるテキストの断片に対応するプレースホルダーをテキストエリアに挿入しました。
しかし、今度は XHR の成功のコールバックで、プレースホルダーを翻訳されたテキストに置き換える必要があります。問題は、私の XHR がfor
ループ内にあり、元のテキストのフラグメントを含むテーブルを反復処理していることです。リクエストが終了すると、ループは長く終了し、翻訳をどこに置くべきかわかりません。
コードは次のとおりです。
PS : これはクロス ドメイン リクエストであるため、jQuery の AJAX メソッドを使用できません。したがって、新しい$.when
機能はここでは使用できません (残念ながら)。
javascript - Tampermonkey でユーザー入力後にメニュー コマンドが消える
Tampermonkey は、Greasemonkey の機能をエミュレートしようとする Google Chrome の拡張機能です。明確にするために、スクリプトを Chrome で動作させ、デフォルトの JavaScript の変更が表示されるようにしました。しかし、メニュー コマンドをテストしたかったので、Tampermonkey メニューでコマンドをクリックした後、6 桁の 16 進数のカラー コードを入力しました。ページをリロードすると、コマンドがメニューから消えました! 私のスクリプトはまだそこにありました(チェックボックスはチェックされていました)。
何をしたか、またはどのコードを変更したかに関係なく、ユーザー定義の入力が設定された後、この初期機能をエミュレートすることはできませんでした。これにより、スクリプトが途中で失敗する原因となっている、削除できない永続データがいくつかあると思われます。注: この正確なスクリプトは、Firefox でエラーなく完全に機能します。
これは明らかに Tampermonkey フォーラムではありませんが、ここの人々はクロスプラットフォームの互換性について非常に精通しているようです。以下のすべての変更の後、Chrome コンソールからのぞき見は 1 つも聞こえませんでした。この時点では、本当にアイデアがありません。ここに私が試したいくつかのことがあります(成功しませんでした)。コンソール エラーが一覧表示されます。
- jQuery のバージョンを 1.5.1 から 1.3.2 に変更する
- ページの読み込み後にコンソールから localStorage.getItem('prevoColor') を呼び出す (両方の値が null)
- クライアント側のストレージを localStorage から get/setValue に変更する
- コンソールから GM_getValue を呼び出す = ReferenceError: GM_getValue が定義されていません
- Chrome オプションで veekun.com の localStorage エントリを削除する
- 更新、スクリプトの再インストール、ブラウザの再起動を数え切れないほど繰り返しています
- Firebug Lite (ブックマークレット) を使用して上記のコマンドをすべて繰り返す
私が使用していたコードは次のとおりです。
なぜこれが起こっているのかについてのアイデアはありますか?
編集: この問題について sizzlemctwizzle にメッセージを送信したところ、彼の返信は次のとおりでした。「Tampermonkey の @require 実装は正しくありません。アップデーターをあまりにも頻繁にダウンロードするため、ブラウザー スニッフィング経由でアップデーターを使用することを禁止しました。サーバーが処理できないだけです」サーバーからダウンロードしているスクリプトには、実際のコードが含まれていてはなりません.スクリプトでエラーが発生しているため、Tampermonkey がこれらの要求を行うときに、ユーザー エージェント ヘッダーを渡していないと思います. Chrome でアップデーターをテストしたことがないので、なぜ壊れたのかわかりません。おそらく、代わりに NinjaKit をインストールしてみてください。」
javascript - Chromeはstyle.display値を読み取ることができません
奇妙な問題があります。FirefoxとGoogleChromeで実行するGreaseMonkeyスクリプトを作成しようとしています。Chromeで、「TamperMonkey」と「Blank Canvas Script Handler」の2つの拡張機能を試しました。これは主に、スクリプトが外部サイトで新しいバージョンを定期的にチェックし、これがクロスサイトスクリプティングと見なされてChromeで許可されていないためです。
私の問題を示すために、簡単なテストケースを作成します。
div要素'extra'はページによって変更されます。問題は、Chromeがel.style.displayの値を読み取ることができないため、extraFlagが再び「false」になることはないということです。私はこのフラグを使用して、コードを何度も実行しないようにしています。サイトはJavaScript駆動型です。このコードはFirefoxでうまく機能します。
Googleで検索しようとしましたが、正解が見つかりません。表示の値を変更するのは簡単なようですが、それを読もうとしているのは私だけのようです!!!
「DOMAttrModified」はChromeでサポートされていないため、このコードを記述します:-(
よろしくお願いします
ericc
javascript - Greasemonkey または Tampermonkey を使用して JavaScript ボタンを追加しますか?
私は Greasemonkey の世界にかなり慣れていないので、JavaScript でボタンを作成する方法を知りたいと思っていました。
たとえば、YouTube や Google にボタンを配置したいとしますか? それを呼び出すか、作成するにはどうすればよいですか?
私は非常に混乱していて、何も見つかりません。これらのサイトの HTML とやり取りして Greasemonkey スクリプトに追加する方法がない限り?
javascript - フォームのラジオボタンの値を変更するGreasemonkey?
私はGreasemonkey/Tampermonkeyスクリプトを書いていますが、ラジコンの名前と値に応じてラジオボタンをオンにする必要があります。
これはそれがどのように見えるかです:
そこで、名前が11で値がzzzzのボタンをチェックするように設定します。
firefox - ユーザースクリプトクローム対Firefox
私はFirefoxで問題なく動作するgreasemonkeyの大きなユーザースクリプトを作成しましたが、Chromeでは何も起こりません:(
どの機能を使用でき、どの機能を使用できませんか?例:GM_setvalue ...同等の関数はありますか?