Ajaxで今よみがえる(^^;;-->[クロスブラウザ技術 ]DHTMLサンプル集
-- リスト --
【カテゴリー】 ActionScript ( 6 ) AIR ( 4 ) AjaSQL ( 10 ) Ajax ( 675 ) Arax ( 1 ) canvas ( 15 ) CSS ( 24 ) ( 9 ) DLNA ( 1 ) Dojo ( 25 ) DOM ( 51 ) ES4 ( 4 ) Ext JS ( 5 ) 反重力物質 ( 1 ) ffAdd-on ( 1 ) Flash ( 48 ) Flash Remoting ( 11 ) FTP ( 2 ) GAF ( 9 ) Google Maps ( 124 ) Google ガジェット ( 1 ) GPS ( 44 ) HTML ( 11 ) HTTPヘッダサンプル ( 10 ) IME ( 2 ) Internet ( 2 ) iPhone ( 49 ) IPv6 ( 1 ) 漫画 ( 4 ) Java ( 49 ) JavaScript ( 343 ) jKamo ( 8 ) jQchart ( 4 ) jQuery ( 207 ) jquery-ref ( 1 ) jsGadget ( 19 ) jslb_ ( 3 ) jslb_ajax ( 9 ) JSON ( 49 ) JSR223 ( 7 ) kjscmd ( 1 ) KNOPPIX ( 1 ) Linux ( 18 ) Mac ( 9 ) Memo ( 3 ) Microformats ( 2 ) Mini AJAX ( 2 ) MochiKit ( 2 ) mootools ( 9 ) Movable Type ( 58 ) MySQL ( 10 ) NewGameWeb ( 2 ) Nucleus ( 8 ) OpenAJAX ( 3 ) OpenDocument ( 1 ) OS ( 10 ) P2P ( 2 ) Perl ( 8 ) PHP ( 38 ) PostGIS ( 1 ) PostgreSQL ( 4 ) prototype.js ( 28 ) ROBOT ( 1 ) RSSリーダー ( 15 ) Ruby on Rails ( 7 ) SPDY ( 1 ) Spry ( 6 ) SQLite ( 17 ) SQLiteWorker ( 2 ) ssh ( 1 ) SSI ( 2 ) SVG ( 23 ) TRON ( 1 ) Ubiquity ( 7 ) Video ( 1 ) VML ( 1 ) Web Slice ( 1 ) Web Sockets ( 22 ) Webサービス ( 107 ) widget ( 6 ) Wii ( 1 ) Wiki ( 1 ) Win ( 6 ) WSH ( 1 ) X01HT ( 30 ) XML ( 32 ) XOOPS ( 1 ) XQuery ( 2 ) XUL ( 4 ) Yahoo! UI ( 74 ) 日付入力用カレンダー ( 1 ) 『Ajax実践テクニック』 ( 1 ) 『入門 Ajax』 ( 42 ) WinTips ( 2 ) こりゃすごい ( 7 ) チューニング ( 30 ) ダイナミックロード関数 ( 7 ) リファレンス ( 20 ) ライブラリ ( 210 ) レーダー雨量表示 ( 1 ) ハード ( 35 ) ペンギン ( 2 ) ブラウザ ( 108 ) ブログでBBS ( 1 ) アクセスグラフ ( 3 ) イベント ( 2 ) カレンダーによる日付入力スクリプト ( 4 ) クロスブラウザ ( 14 ) クロスブラウザ関数 ( 8 ) スポーツ ( 1 ) スマートフォン ( 8 ) セキュリティ ( 155 ) ソフトイーサ ( 1 ) マッシュアップ ( 23 ) 暗号 ( 4 ) 映画 ( 57 ) 河川の水位グラフ ( 3 ) 回線 ( 2 ) 開発ツール ( 38 ) 牛久大仏 ( 19 ) 携帯 ( 150 ) 言語 ( 19 ) 故障 ( 9 ) 高橋家の謎 ( 3 ) 広告とか ( 1 ) 洪水警報システム ( 2 ) 今日のひと言 ( 10 ) 仕様 ( 113 ) 雑談 ( 354 ) 実装 ( 2 ) 書籍 ( 20 ) 親子ウインドウ有無の確認関数 ( 3 ) 新海誠 ( 3 )
Web Sockets Domo

* サーバー側は、小松氏のこれをbloga.jp:80へ置いてあります。
* クライアント側はWS処理をjQueryプラグイン化してみました。これです。
* ちなみに、このDemoサンプルは、下記5行でローカルでも別ドメインでもどこにでも設置出来ます。
<script src="http://bloga.jp/ws/jq/js/jquery-1.3.2.min.js" type="text/javascript"></script> <script src="http://bloga.jp/ws/jq/js/jquery.ws-0.3-noenc-pre.js" type="text/javascript" charset="utf-8"></script> <script src="http://bloga.jp/ws/jq/conn/wschatdemo0.3.js" type="text/javascript"></script> <script>/*サポートしてない時のalertメッセージを抑止*/$.ws.wsSetup({nonosupportmsg:true});</script> <div id="wsdemos"></div>

【info】いつもいろいろなテストなどをページ内のあちこちでやっているので、重かったり、壊れていたりするf^^;ことも多いです。実験用ですので、カオス(混沌)をあえて意図したりもしますので、標準やValidとは無縁だったりしますが、何卒、ご了承ください ( _ _ b

【info】 最近はTwitterでぶつぶつ言ってることが多いです。
>http://twitter.com/toshirot

2006年04月13日

【Win】MSIEのパッチKB912945のナイスな対応策

Ajax , Flash , Flash Remoting , Java , JavaScript , SVG , Win , ブラウザ ブックマークに追加する ブックマーク-- Hatena  / Livedoor track feed


【Win】2006年4月の Windows Update 問題
http://jsgt.org/mt/archives/01/000981.htmlのつづき

【Flash】Flash アクティブ コンテンツ アップデート拡張機能
http://jsgt.org/mt/archives/01/000997.htmlへつづく
Mugさんのナイスな対応策
■[JavaScript]MSIEのパッチKB912945の対応案
http://d.hatena.ne.jp/Mug/20060411/1144761874

現状のEMBEDやOBJECTタグをそのままにして最後に1行追加するだけという、特に、大量の緊急避難処置が必要な方には重宝しそうなアイディアです。

しかも、SCRIPTを使用しない環境でも見ることができます(もちろんこの場合は「クリック」は必要になりますが、見えないより100倍ましでしょう)。

試してみました
http://game.gr.jp/js/books/dhtml2/part2/b/b32/b32-5-3.htm
<html>
  <body>
    <embed src="menu2.swf"> ←Flash用タグは、そのまま。いじらなくて良い。
    この1行↓を</body>の直前へ追記するだけ。
    <script src="foroae.js" language="JScript" charset="Shift_JIS"></script>
  </body>
</html>

----------------------------------------
--foroae.js--
(function() {
  var all = document.all;
  if(all) {
    var lst = [];
    var len = all.length;
    for(var i = 0; i < len; i++) {
      var obj = all[i];
      if(obj && obj.nodeName) {
        switch(obj.nodeName.toLowerCase()) {
          case "object":
          case "applet":
          case "embed":
            lst[lst.length] = obj;
            break;
          default:
        }
      }
    }
    for(var i = 0; i < lst.length; i++) {
      lst[i].outerHTML += "";
    }
    lst = null;
  }
})();

その他の対応策

document.writeのケース
http://game.gr.jp/js/books/dhtml2/part2/b/b32/b32-5-1.htm
outerHTMLのケース
http://game.gr.jp/js/books/dhtml2/part2/b/b32/b32-5-2.htm
そして、直接embedタグをHTML内に書いた、つまり駄目なケースです。
http://game.gr.jp/js/books/dhtml2/part2/b/b32/b32-5-0.htm

Allabout::[号外]FlashなどをIE仕様変更に対応させる
http://allabout.co.jp/internet/javascript/closeup/CU20060415A/index.htm
【Win】ActiveX コントロールのアクティブ化
http://jsgt.org/mt/archives/01/000955.html
MSのセキュリティ・パッチでFlashコンテンツの再生に不具合発生,その理由は? http://itpro.nikkeibp.co.jp/article/NEWS/20060412/235165/


    hsty ( 2006年04月26日 23:23 )

    こんばんは!
    検索からAllaboutで辿り着きました。

    EMBED・OBJECTタグの修正をしなくていいとは驚きでした!

    この問題で大変困っておりましたので、大変助かりました。ありがとうございます。

    G ( 2006年05月14日 02:01 )

    この問題について随分沢山のサイトを巡りましたが、このページの方法で解決しました。
    一言お礼を。

    えむけい ( 2006年05月27日 11:49 )

    > 試してみました
    > http://game.gr.jp/js/books/dhtml2/part2/b/b32/b32-5-3.htm
    私の環境だと、Flashにマウスを乗せたときクラッシュすることがあります。スクリプトが有効で、かつIE起動後最初にそのページを開いた場合にクラッシュするみたいです。
    クラッシュするのはもちろんブラウザかFlashのバグですが、ちょっと使えないですね。

    noscriptを使ったもっと賢い方法があります。
    http://activecontent.blogspot.com/2006/04/solution.html
    記述量は多少増えますが、既存のembedやobjectを変更しなくて済むのは同じですし、
    > 1. object,embed,appletの各オブジェクトに対し、動的にイベントメソッドなどを追加・削除していないこと
    > 2. object,embed,appletの各オブジェクトのonloadが2回呼ばれたり、(自動再生ならば)2回開始したりするかもしれないが、少しの時間差であれば許容できること
    のような制限もありません。もちろんクラッシュもしません。

    えむけい ( 2006年05月27日 11:53 )

    > しかも、SCRIPTを使用しない環境でも見ることができます
    という点も同じです。


    【コメント】(←clickで入力欄open)





AllaboutのJavaScript記事を連載させていただいてます。最近は、jQueryを主に取り上げていますが、多少なりとも参考になれば幸いです。