クロスブラウザーUserJSを作成します。 例#2:アラートのオーバーライド()

開始: 例1:Yandexロゴの変更

前回尋ねられたとき:「 そしてUserJSからページ変数にアクセスできますか? 」。

答えはイエスです。

alert()関数を使用した例を示します。 alert-ページ変数、ウィンドウメソッド。 代わりに、アラートは他の変数にすることができます。


OperaおよびSafari GreaseKit


  window.alert = function(){...} 


Firefox


window.wrappedJSObject.alert = function(){ ... }

前の記事のwindow.wrappedJSObjectを覚えていますか? いや? 次に、「 例1:Yandexロゴの変更 」に進みます

Opera、Firefox、Safari GreaseKitで動作するオプション:

  var w = window.wrappedJSObject || 窓;
 w.alert = function(){...} 

いいですね、私が作ったスクリプトはこの正確なコードを使用しています。

Google Chrome


Google Chrome 3では、contentWindowからページウィンドウにアクセスできます。 セキュリティ上の理由により、Chrome 4はこれを削除しました 。 彼らはこのように書くと言う:

  location.href = "javascript:window.alert = function(){...} 

注: Chrome向けUserJSを作成する理由はありません。 .CRX拡張子を記述する必要があり、それらは更新できます。 これは同じUserJSですが、アーカイブ内にあります(manifest.jsonのような些細なこともあります)。 したがって、Chromeについてはまだ書きません。

続き: 例#3:TwitPicサムネイル

Source: https://habr.com/ru/post/J73928/


All Articles