javascriptで、現在開いているページのボタンなりリンクなりを押したら、

現在開いているページの中身をそのまま、拡張子docで新しいウィンドウで開く(htmlファイルの拡張子をdocにして開いた状態)、というふうにしたいんですが、
そもそもこれはできそうなことでしょうか?

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2007/02/15 23:08:20
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:susie-t No.1

回答回数99ベストアンサー獲得回数18

ポイント300pt

確証はありませんが、その機能をJavaScriptのみで実現するのはかなり無理があると思います。

強引な方法として、Win+IE限定ですが、WSH(Windows Script Host)を使用して、ローカルにテンポラリファイルを作成する方法があります。しかし、一般的なWebページでWSHを使用するのはセキュリティ上、使用者側にかなりの抵抗が予想され、おすすめできません。

一応サンプルを提示します。

<html>
<head>
<title></title>
<script>
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
var path = 'c:\\tmp\\tmp.doc'
function openAsDoc(){
  var doc = fso.OpenTextFile(path, 2, true);
  doc.Write(document.body.parentNode.innerHTML);
  doc.Close();
  var win = window.open(path);
}
//-->
</script>
</head>
<body>
<textarea>aaaaa</textarea>
<button onclick="openAsDoc();">OPEN</button>
</body>
</html>

テンポラリファイルパスの不在、または競合、使用後の削除など、問題山積ですが^^;

ローカルで個人使用する場合や、チーム作業で使用者が限られる場合等であれば使えるかもしれません。

参考になれば幸いです。

id:washita

やはり無理がありますか。

本当にどうもありがとうございました。

2007/02/13 18:47:09

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません