Sunflat のブログ

ソフトウェア開発についての話題が多いかも

ActiveXがクリックしないと実行されない

今回のInternet Explorerのパッチで,ActiveXコントロールFlashJava Applet等)が,一度クリックしないと反応しないようになってしまった.

[ここ] の情報によると,どうやら"外部"のJavaScript上でActiveXコントロール用のHTMLタグを出力すれば,この現象は起こらないらしい.
特許がからんでるらしいけど,面倒だなぁ…

とりあえず,以下のようなJavaScriptを別ファイル(docwrite.js)として作成する.

function docWrite(s) {
	document.write(s);
}

そして,ActiveXコントロール用のHTMLタグを以下のように出力させればOKっぽい.このままじゃ特許に反してる気もするけど,こんなんでいいのかなぁ….

<script type="text/javascript" src="http://〜/docwrite.js">
</script>
<script type="text/javascript"><!--
docWrite('<object classid= 〜> 〜 </object>');
//--></script>


ちなみに,Appletタグの場合は,この方法だとなんかうまくAppletが表示されない….代わりにObjectタグを使えば大丈夫だけど,MSJVMで動かなくなりそうだし,IEFireFoxでタグの表記が違って面倒そう.まぁJavaAppletはこのままでいいか(^−^;)