以前に、下記①の環境でJavaScriptからローカルにテキストファイル作成することができていました。(ソースは下記参照)
しかし、下記②の環境に移行したところ、③の行にて④のエラーが表示されます。ネットで④のエラーを検索してみましたが、解決策が見つかりません。
もし分かる方がおられましたら、ご教授願います。
(下記ソースのオリジナルはネットから見つけたものです。)
① Linux(CentOS 5.6) / Firefox(version 3.6.13)
② Linux(CentOS 7.4.1708) / Firefox(version 60.5.0)
③ netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
④ Error: TypeError: netscape.security.PrivilegeManager is undefined
□ Please contact the website owners to inform them of this problem.
----------------------------------------------------------------------------
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type="text/javascript">
function writeToLocal(filename, content) {
var ua = navigator.userAgent.toLowerCase();
try {
if (ua.indexOf('firefox') != -1) { // Firefox
filename = (ua.indexOf('windows') != -1 ? 'C:\\tmp\\' : '/tmp/') + filename;
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var file = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(filename);
var fileStream = Components
.classes['@mozilla.org/network/file-output-stream;1']
.createInstance(Components.interfaces.nsIFileOutputStream);
fileStream.init(
file,
0x02 | 0x08,
0664,
0
);
var converterStream = Components
.classes['@mozilla.org/intl/converter-output-stream;1']
.createInstance(Components.interfaces.nsIConverterOutputStream);
converterStream.init(
fileStream,
'UTF-8',
content.length,
Components.interfaces.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER
);
converterStream.writeString(content);
converterStream.close();
fileStream.close();
alert('書き込みが完了しました!');
}
} catch (e) {
alert('Error: ' + e);
}
}
writeToLocal('test.txt', 'これはJavaScriptが作成したファイルだよ!\n');
</script>
</head>
</html>
----------------------------------------------------------------------------
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
> 具体的な代替案があったらうれしいです。
ないんじゃないかな。
いや、あるけど。
どっちや、って話はともかく、「危険性」は認知してほしいかな。
ぶっちゃけ、netscape.security.PrivilegeManagerが無くなったのはセキュリティの問題。危ないから使わん方がいい、って事。
最後にnetscape.security.PrivilegeManagerが載ってるのはFirefox ver.16かな。
だからFirefox16にダウングレードする、ってのが解決策。
PortableApps.com:
https://sourceforge.net/projects/portableapps/fi …
回答ありがとうございます。
>最後にnetscape.security.PrivilegeManagerが載ってるのはFirefox ver.16かな。だからFirefox16にダウングレードする、ってのが解決策。
一度、Firefoxのダウングレードは試みていたのですが、うまくいきませんでした。(ダウングレードできなかった。)
さらに検索を続けたところ、下記を見つけて期待していた動作をさせることができました。
数か月悩んでいたことがやっと解決しました。
https://mikaduki.info/webprogram/js/1831/
>「危険性」は認知してほしいかな。
ちなみに、この件を使っている環境はスタンドアロン環境で外部(インターネット)接続されていません。
以上
No.1
- 回答日時:
これじゃないの?
最近Firefoxを使っていたら:
https://detail.chiebukuro.yahoo.co.jp/qa/questio …
基本的に、過去のFirefoxにnetscape.security.PrivilegeManagerってのがあったけど、今はねぇよ、って言うそれだけの話だと思うんですが。
だから自分で改造するなり、あるいはそのスクリプト使用をやめるしかないんじゃないかな。
回答ありがとうございます。
https://detail.chiebukuro.yahoo.co.jp/qa/questio …
についてはエラーの内容で検索して確認済でした。
しかし、上記の回答内容で解決しなかったので、質問していました。具体的な代替案があったらうれしいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
getElementsByNameで要素が取得...
-
ボタンのID名を取得するには?
-
function の return 値を表示し...
-
「オブジェクトを指定してくだ...
-
月ごとに背景色を変える
-
html javascript 作った配列を...
-
SCRIPT5007: 未定義または NULL...
-
フォーカス移動抑止について
-
IEの拡大・縮小機能をWebページ...
-
bodyタグのfocus
-
<a href="#" …>の意味を教えて...
-
<div>のタッチ状態を維持したま...
-
別ファイルのfunctionの読み込み方
-
プラグイン無しでContactform7...
-
SQLのWHEREで全てを質問する方法
-
ウインドウを縮小しても文字を...
-
プルダウンメニューを別ファイ...
-
Dreamweaver で 外部JSを読み込...
-
「関数が定義されていない」と...
-
window.openで同画面遷移しない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
getElementsByNameで要素が取得...
-
JavaScriptでiframeの内容を「...
-
function の return 値を表示し...
-
SCRIPT5007: 未定義または NULL...
-
ボタンのID名を取得するには?
-
JavaScript でキーを送る
-
フォーカス移動抑止について
-
乱数を一定時間毎に表示させた...
-
ボタンを押してテキストエリア...
-
bodyタグのfocus
-
JavaScriptでのEnterキーとAlt+...
-
自動ジャンプでフォームデータ...
-
一定時間画像を表示させ、その...
-
リンク移動先のURLを取得
-
idHOGEで取得したinnerText(数...
-
「オブジェクトを指定してくだ...
-
html javascript 作った配列を...
-
キーを押している間の時間を計...
-
チェックボックスの選択パター...
-
Operaでのobjectタブの高さ変更
おすすめ情報