<div id="inner-wrapper" class="base-content-width">\r
<!-- InstanceBeginEditable name="main_content" -->\r
<div id="main">\r
+ <div id="breadcrumb"><a href="index.html">テスト インデックス</a> > ActiveX</div>\r
<h2>ActiveX が有効か? を js から調べる</h2>\r
<p>このページは ie8 以下用の テストページです.</p>\r
<p>\r
- ActiveX が有効か? 調べるために以下のような script を使用していましたが、<strong>ie の設定によっては警告が出てしまうためよろしくないみたいです.</strong>(ie7 で遭遇)\r
+ ActiveX が有効か? 調べるために以下のような script を使用していましたが、<code>new ActiveXObject</code> の辺りで <strong>ie の設定によっては警告が出てしまうためよろしくないみたいです.</strong>(ie7 で遭遇)\r
</p>\r
<p>ActiveX が使えなくても他の手段でユーザーのサポートは行える(はずな)ので、警告を表示しない方法で ActiveX が有効か? 取得したいところです.</p>\r
<pre><code>\r
c = b.className || '',\r
x = document.createElement('div');\r
b.appendChild(x);\r
- x.style.cssText = 'width:1px;height:1px;filter:progid:DXImageTransform.Microsoft.Shadow()';\r
+ x.style.cssText = 'width:1px;height:1px;line-height:1px;filter:progid:DXImageTransform.Microsoft.Shadow()';\r
b.className += [ c !== '' ? ' ' : c, 'pettanr-ActiveX-', x.offsetHeight > 1 ? 'enabled' : 'disabled'].join( '');\r
b.removeChild(x);\r
})();\r
<h4>ActiveX が切られている場合の影響</h4>\r
<p>ActiveX が切られている場合、 filter 指定による css3 相当のデザインが使えなくなるほかに、ActiveX オブジェクトとして提供される Flash が使えなくなる.これにより pettanR にとって重要な機能、画像の反転や ie6 以下への pngfix が難しくなる.</p>\r
<p>さらに、ie6 以下では ActiveX オブジェクトとして提供される XmlHttpRequest も使えなくなる.( この場合サーバとの通信手段は、動的に生成したフォーム部品によるもの などに限られてくる )</p>\r
- <p>Silverlight や VML がどうなるか?は不勉強.(おそらく VML は ActiveX と無関係、Silverlight も同様なら Silverlight の重要度が少し上がる)</p>\r
+ <p><del>Silverlight や VML がどうなるか?は不勉強.(おそらく VML は ActiveX と無関係、Silverlight も同様なら Silverlight の重要度が少し上がる)</del></p>\r
+ <p>ActiveX が切られている場合、Silverlight や VML も使えなくなり かなり難しい状況になる.サーバーの画像変換機能の助けを借りてなんとか表示している状態になってしまう.</p>\r
+ <p>VBscript に使える機能ないかな??</p>\r
<h4>【一応】js が有効だからといって ActiveX も有効とは限らない</h4>\r
<p>ActiveX は js と同時に切られることが多いが、これは ie のデフォルトのセキュリティ設定のためで、ActiveX と js はそれぞれ独立して on / off ができる.</p>\r
- <p>そのため js が有効だからといって ActiveX も有効とは限らない.</p> \r
+ <p>そのため js が有効だからといって ActiveX も有効とは限らない.</p> \r
+ <h3>追記 2012/03/24</h3>\r
+ <p>ie6 でうまく動かなかったため修正.ie6~8 のデフォルト設定が localhost では ActiveX が切になっているようで気付いた.</p>\r
+ <pre><code>\r
+x.style.cssText = 'width:1px;height:1px;filter:progid:DXImageTransform.Microsoft.Shadow()';\r
+↓\r
+x.style.cssText = 'width:1px;height:1px;<ins>line-height:1px;</ins>filter:progid:DXImageTransform.Microsoft.Shadow()';\r
+ </code></pre>\r
</div>\r
<!-- InstanceEndEditable -->\r
</div>\r
</div>\r
</div>\r
<div id="copyright">Copyright (c) 2011-2012 pettanR team, some rights reserved.</div>\r
- </div><!-- #EndLibraryItem --></div>\r
+ </div><!-- #EndLibraryItem -->\r
+ </div>\r
+ <script type="text/javascript">\r
+ var has_server_support = false;\r
+ </script>\r
<script type="text/javascript" src="../javascripts/common.js"></script>\r
<!-- InstanceBeginEditable name="script" -->\r
<script type="text/javascript">\r