2011-10-08 6 views
12

ファイルのダウンロードを上書きしてブラウザに表示するChrome拡張機能を作成しようとしています。たとえば、 '.csv'ファイルへのリンクをクリックすると、ダウンロードする代わりにブラウザでレンダリングします。Chrome拡張機能を使用してファイルタイプを無効にする

ChromeはすでにPDFの種類とXml Tree extension also does exactly that for xml files.

ためにそれをしないので、それだけで、そのイベントをキャッチについては移動する方法がわからないことができすべきですか?

+2

わかりませんが、これは関連する可能性がありますhttp://code.google.com/p/chromium/issues/detail?id = 35070 と http://groups.google.com/a/chromium.org/group/chromium-extensions/browse_thread/thread/a76cb5f021bbce7e/a1c439d747250170?lnk=gst&q=file+type#a1c439d747250170 – timoxley

答えて

4

CSVファイルの以前の回答にすることによって示され、特別に設計された線に沿った実装は、githubの上に私のこの拡張に見出すことができます- (background.jsを参照してください、これはバックグラウンドスクリプトにしておく必要があります)onBeforeRequestを聞い

  1. webrequest API直接的なアプローチは、次のラインに沿って、今も可能です
  2. チェックこれはCSVファイル(MIMEタイプまたはファイル拡張子)
  3. ので、要求をキャンセルし、このの作業バージョンは、その延長の枝で見つけることができますXHR

を使用してデータを表示する場合であれば:https://github.com/rgrp/chrome-csv-viewer/tree/4-webrequest-intercept

2

いつでもXMLツリーのコードを見ることができます:)。

アドレスバーからファイルを開くのではなく、リンクで作業する必要がある場合は、すべてのリンクにクリックイベントリスナーを追加するコンテンツスクリプトを作成できます。イベントリスナー関数で

  1. は、リンク 'は、以下のブラウザを防ぐために、最初の行にe.preventDefault()を追加します。

  2. リンクhref値を使用して、XMLHttpRequestでデータを取得します。

  3. XMLHttpRequestコールバックで、新しいタブを開き、それに応じてコンテンツを表示します。あなたが「正常」のリンクが

  4. はどのようにあなたが言うことができるブラウザでいつものように扱われたい

は明らかに、多くの点で、これは素晴らしい解決策ではありませんテキストファイルに、信頼性の低いファイル拡張子を参照する以外は、カンマ区切りの値が含まれているとしますか?

具体的には、.csvファイルや他の特定の種類のコンテンツについて考えていますか?新しい(ISH)クロムと、

https://github.com/rgrp/chrome-csv-viewer

さらに:

関連する問題