2011-07-20 8 views
2

私がオンラインで見つけたユーザースクリプトがあり、それを通常のjavascript(すなわち、userscriptではなく)としてウェブサイトに組み込みたいのですが、どうすればいいですか?userscriptを通常のjavascriptとして使用しますか?

これはかなりシンプルなようですが、私はjavascriptとuserscriptに新しいです、うまくいけば誰かが私を助けることができます。

例えば、私はこのuserscriptが見つかりました:...任意のUPS/FEDEX/USPSの追跡番号を照合する正規表現のためのページを解析し、各キャリアへのリンクに変換されます

を「Convert UPS and FedEx Tracking Numbers to Linksを」その番号を追跡するウェブサイトを追跡します。

これはユーザースクリプトとしてはうまくいきますが、私が作業しているサイトで自動的に機能します(ユーザーがユーザースクリプトをダウンロード/インストールする必要はありません)。
このuserscriptを通常のjavascriptとして使用するにはどうすればよいですか?

答えて

2

UserScriptsが通常実行されていますページの内容に完全にアクセスできることを確認します。ですから、それを達成するには何らかの仕組みが必要です。しかし、古いバージョンのIEでは特別な処理が必要なので、これはややこしいことです。

手動で行うには約30行のコードが必要です。 jQueryのようなライブラリがそうのようなready()方法を提供します。

<script src="http://code.jquery.com/jquery-latest.min.js"></script> 
<script> 
$(document).ready(function() { 

    // put userScript here 

}); 
</script> 
+0

ありがとう!これで問題は解決しました。残りのページが読み込まれる前にスクリプトが実行されていたようです。 –

1

JSファイルに入れて、ページにファイルを含めることができます。

UserScriptsには通常のJavascriptコードが含まれていますが、ページ上ではなくプラグインによって実行されます。

それはちょうど、他のJavascriptファイルのようにそれを結ぶの問題であるべき
+0

おかげで..私はそれを行っていたが、それは働いていなかった、問題は、それがページの残りの部分の前に実行されたことがあったが。 –

2

foo.jsとしても保存

、ページのDOMがロードされた後、あなたのHTMLに、

<body> 
<!-- body code here --> 
<script src="foo.js"></script> 
</body> 
+0

ありがとう..私はそれをしていたが、それは動作していなかった、問題は、それがページの残りの部分の前に実行されていたことが判明した。 –

+0

jmiller、この答えが示すようにスクリプトが置かれていれば、それはしません...閉じる ''タグの直前です。ここにスクリプトを置くことは、一般的なパフォーマンスの向上です。 –

+0

私は..はい、私は、ページがロードされる前に実行する必要があるコードを含むインクルードされたヘッダーファイルでそれを持っていた.. jqueryの準備メソッドを使用してこのセットアップに利点はありますか? –

関連する問題