ゼロと無限の間に

フリーでオープンソースなJavaScriptとかPHPとか。

ユーザ用ツール

サイト用ツール


javascript:flush-flash

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
javascript:flush-flash [2008/02/29 22:55]
dgbadmin image追加
javascript:flush-flash [2008/04/08 23:06] (現在)
dgbadmin 0.1.1a copyrightの年を訂正
行 1: 行 1:
 ====== Flashを動的に表示してアクティブ化する - FlushFlash ====== ====== Flashを動的に表示してアクティブ化する - FlushFlash ======
 +
 +コメントと更新履歴は[[http://0-oo.net/log/category/flush-flash/|ゼロと無限の間のログ » FlushFlash]]でどうぞ。
  
 {{javascript:flash-3d.png|}} {{javascript:flash-3d.png|}}
行 7: 行 9:
 それなら[[http://code.google.com/p/swfobject/|SWFObject]]でいいじゃないかとも思ったけどちょっとオーバースペック?三輪車には三輪車の車輪を。 それなら[[http://code.google.com/p/swfobject/|SWFObject]]でいいじゃないかとも思ったけどちょっとオーバースペック?三輪車には三輪車の車輪を。
  
-コメント更新履歴は[[http://0-oo.net/log/category/flush-flash/|ゼロと無限ログ » FlushFlash]]でどうぞ。+ころで、ある程度Flashを表示するWebサイトの場合は[[http://d.hatena.ne.jp/Mug/20060411/1144761874|MSIEパッチKB912945対応案 - 新しいJavaScriptの使い方を考える]]のやり方がスマートだと思える今日この頃 ^_^ 
  
 ===== 使い方の例 ===== ===== 使い方の例 =====
行 22: 行 25:
 flush.into("element-id"); //普通は空のdiv要素を用意してそのidを指定する flush.into("element-id"); //普通は空のdiv要素を用意してそのidを指定する
 </code> </code>
 +
 +メソッドチェーンもできる
 +<code javascript>
 +new FlushFlash("/path/to/swf", 400, 300).avoidCache().allowAccess().write();
 +</code>
 +
  
  
行 27: 行 36:
 <code javascript> <code javascript>
 /** /**
-    コンストラクタ +  FlushFlash 
-    @param    String    path       swfのパス +  @see       http://0-oo.net/sbox/javascript/flush-flash 
-    @param    Number    width      幅 +  @version   0.1.1a 
-    @param    Number    height     高さ +  @copyright 2008 dgbadmin@gmail.com 
-    @param    Object    options    (省略可) param要素として指定する値+  @license   http://0-oo.net/pryn/MIT_license.txt (The MIT license) 
 + */ 
 + 
 +/** 
 + *  コンストラクタ 
 +  @param  String  path    swfのパス 
 +  @param  Number  width   幅 
 +  @param  Number  height  高さ 
 +  @param  Object  options (省略可) param要素として指定する値
  */  */
 FlushFlash = function(path, width, height, options) { FlushFlash = function(path, width, height, options) {
行 39: 行 56:
     this.params = options || {};     this.params = options || {};
     this.params["movie"] = path;     this.params["movie"] = path;
-}+};
 /** /**
-    透過にする (※透過にするとテキストボックス等でIMEが使えなくなるので注意)+  ブラウザキャッシュのSWFを使わずに、SWFを強制リロードする 
 +  @return self 
 + */ 
 +FlushFlash.prototype.avoidCache  = function() { 
 +    if (this.path.match(/\?/)) { 
 +        this.path += "&"; 
 +    } else { 
 +        this.path += "?"; 
 +    } 
 +    this.path += "dummyToAvoidCache=" + new Date().getTime(); 
 +    return this; 
 +}; 
 +/** 
 + *  透過にする (※透過にするとテキストボックス等でIMEが使えなくなるので注意) 
 +  @return self
  */  */
 FlushFlash.prototype.setTransparent = function() { FlushFlash.prototype.setTransparent = function() {
     this.params["wmode"] = "transparent";     this.params["wmode"] = "transparent";
-}+    return this; 
 +};
 /** /**
-    背景色を指定する (#ffffff形式で指定する。#fffは不可) +  背景色を指定する (#ffffff形式で指定する。#fff形式使えない) 
-    @param    String    color+  @param  String  color 
 +  @return self
  */  */
 FlushFlash.prototype.setBgColor = function(color) { FlushFlash.prototype.setBgColor = function(color) {
     this.params["bgcolor"] = color;     this.params["bgcolor"] = color;
-}+    return this; 
 +};
 /** /**
-    外部ドメインにアクセスできるようにする+  外部ドメインにアクセスできるようにする 
 +  @return self
  */  */
 FlushFlash.prototype.allowAccess = function() { FlushFlash.prototype.allowAccess = function() {
     this.params["allowScriptAccess"] = "always";     this.params["allowScriptAccess"] = "always";
-}+    return this; 
 +};
 /** /**
-    FlashVarsを渡す +  FlashVarsを渡す 
-    @param    String    vars+  @param  String  vars 
 +  @return self
  */  */
 FlushFlash.prototype.setFlashVars = function(vars) { FlushFlash.prototype.setFlashVars = function(vars) {
     this.params["FlashVars"] = vars;     this.params["FlashVars"] = vars;
-}+    return this; 
 +};
 /** /**
-    object要素を生成する +  object要素を生成する 
-    @return    string    object要素+  @return string  object要素
  */  */
 FlushFlash.prototype.build = function() { FlushFlash.prototype.build = function() {
-    var params = this.params; 
     var o = "";     var o = "";
     o += '<object data="' + this.path + '" width="' + this.w + '" height="' + this.h + '"';     o += '<object data="' + this.path + '" width="' + this.w + '" height="' + this.h + '"';
     o += ' type="application/x-shockwave-flash">';     o += ' type="application/x-shockwave-flash">';
 +    var params = this.params;
     for (var i in params) {     for (var i in params) {
         o += '<param name="' + i + '" value="' + params[i] + '" />';         o += '<param name="' + i + '" value="' + params[i] + '" />';
行 80: 行 118:
     o += '</object>';     o += '</object>';
     return o;     return o;
-}+};
 /** /**
-    その場にswfを描き出す+  その場にswfを描き出す
  */  */
 FlushFlash.prototype.write = function() { FlushFlash.prototype.write = function() {
     document.write(this.build());     document.write(this.build());
-}+};
 /** /**
-    要素の中にswfを描き出す +  要素の中にswfを描き出す 
-    @param    String    elementId+  @param  String  elementId
  */  */
 FlushFlash.prototype.into = function(elementId) { FlushFlash.prototype.into = function(elementId) {
     document.getElementById(elementId).innerHTML = this.build();     document.getElementById(elementId).innerHTML = this.build();
-}+};
 </code> </code>
  
javascript/flush-flash.1204293321.txt.gz · 最終更新: 2008/02/29 22:55 by dgbadmin