<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>宇都宮ウエブ制作所 &#187; ブログパーツ</title>
	<atom:link href="http://utweb.jp/blog/archives/tag/%e3%83%96%e3%83%ad%e3%82%b0%e3%83%91%e3%83%bc%e3%83%84/feed" rel="self" type="application/rss+xml" />
	<link>http://utweb.jp/blog</link>
	<description>宇都宮さんっていう、夫婦でやってるウエブサイト制作請負の大阪下町家内製手工業業務日誌</description>
	<lastBuildDate>Wed, 16 May 2012 04:06:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://utweb.jp/blog/archives/tag/%e3%83%96%e3%83%ad%e3%82%b0%e3%83%91%e3%83%bc%e3%83%84/feed" />
		<item>
		<title>[suzunari.js]簡単に全画面Flashブログパーツを作れるsuzunari.jpを使ってみる</title>
		<link>http://utweb.jp/blog/archives/680</link>
		<comments>http://utweb.jp/blog/archives/680#comments</comments>
		<pubDate>Sun, 21 Mar 2010 07:23:45 +0000</pubDate>
		<dc:creator>正宗</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[swfobject]]></category>
		<category><![CDATA[ブログパーツ]]></category>

		<guid isPermaLink="false">http://utweb.jp/blog/?p=680</guid>
		<description><![CDATA[今回はKAYACさんが公開されているブログパーツ配布JS「suzunari.js」を紹介したいと思います。

これは何？
これは何をするものか、ひとことで言い表すと、「Flashのブログパーツを貼るためのJavaScri [...]]]></description>
			<content:encoded><![CDATA[<p>今回はKAYACさんが公開されているブログパーツ配布JS「<a href="http://coderepos.org/share/wiki/suzunari" target="_blank">suzunari.js</a>」を紹介したいと思います。<br />
<span id="more-680"></span></p>
<h3>これは何？</h3>
<p>これは何をするものか、ひとことで言い表すと、「<strong>Flashのブログパーツを貼るためのJavaScript</strong>」ということになります。<br />
こういった「たったそれだけのこと」を自前だけできちんとやろうと思うと、「凄いこと」と比べてもどれだけ膨大な労力を必要とするするかは、このブログを読まれている主な読者であろう制作系業者の方々は十分すぎるほど伝わると思いますが、いちおう補足しておきますとブログパーツなどのようにどこに貼られるかわからないJSを書く場合、グローバル変数をなるべく汚さないなどいろいろと気をつけないといけないことがあるんですが、このsuzunari.jsはそこらへんの「気をつけなくてはいけないこと」をクリアして簡単にFlashブログパーツを貼り付けることが出来るたいへんありがたいJavaScriptです。</p>
<h3>さっそく使ってみる</h3>
<p>使い方はとても簡単で、_level0.KAYACでも紹介されているので<br />
<a href="http://level0.kayac.com/2009/12/suzunari_js.php" target="_blank">簡単ブログパーツ配布JS suzunariを使ってみよう</a><br />
こちらのページを参考にすればSCRIPTタグを書くだけで誰でも簡単にFlashブログパーツを貼ることが出来ると思います。<br />
普通ならjavascriptを書き直す必要すらありませんね。</p>
<h3>全画面ジャック！</h3>
<p>JavaScriptに詳しい方なら「グローバル変数を汚したくないなら、わざわざsuzunari.jsを使わなくてもSWFObjectをクロージャーに閉じ込めてしまえばいいじゃないか」などなどいろいろと解決策を思いつくはずです。<br />
suzunari.jsが便利なのは、ただFlashブログパーツを貼り付けるだけじゃなくて、全画面ジャックも簡単に出来るというところもあるからです。<br />
基本的に全画面ジャックもJavaScriptは一切触らなくても、ASから特定のjs関数を呼び出すだけで簡単に全画面がジャックできるブログパーツが作れます。</p>
<h3>変わったことしてみた</h3>
<h4>指定した要素にSWFを差し込む</h4>
<p>suzunari.jsはブログパーツを貼ることを目的に作られたJavaScriptですから、普通につかうと</p>
<pre>&lt;script src=&quot;/js/suzunari.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;</pre>
<p>こうやって書かれたところがまるまるSWFに差し変わるイメージの動作をしますが、たまにはSWFObjectみたいに指定した要素の中にSWFを差し込みたい夜もある。<br />
そんなときはsuzunari.jsを開いてみましょう。</p>
<pre class="javascript">suzunari<span style="color: #66cc66;">&#40;</span><span style="color: #009900; font-style: italic;">/* base URI string */</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;</pre>
<p>どうもこのwrite()がSWFObjectの書き出しを実行しているみたいです。<br />
いきなりwrite()しようとしてるみたいなので、とりあえずこのへんを消しておいて</p>
<pre class="javascript">suzunari<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">ready</span><span style="color: #66cc66;">&#40;</span>
<span style="color: #003366; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> target = jQuery<span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'#flashcontents'</span><span style="color: #66cc66;">&#41;</span>;
	target.<span style="color: #006600;">html</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">''</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span>target<span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span>;</pre>
<p>こうやって書き直してみました。<br />
readyのタイミングでいいのかどうかはちょっとわからないけど、とりあえずいきなりwriteしはじめることを防ぎたかったのでこのタイミングで実行することにしました。<br />
writeには引数としてID名かエレメントそのものを渡してやればその中にSWFを表示するようになります。<br />
つまりsuzunariのwrite関数への引数は</p>
<pre class="javascript">suzunari<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">&quot;flashcontents&quot;</span><span style="color: #66cc66;">&#41;</span></pre>
<p>でも</p>
<pre class="javascript">suzunari<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span>jQuery<span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'#flashcontents'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span></pre>
<p>でもどちらでもいいです。</p>
<p>もう一個注意する点は、suzunari().write()は渡されたエレメントの中身を書き換えるわけではなくappendChildされるので、渡すべきエレメントの中身を一旦消しとくといいということです。<br />
ちょっと何言ってるかわからなくなってきましたが、</p>
<pre>&nbsp;
&lt;div id=&quot;flashcontents&quot;&gt;ここにFlashブログパーツが表示されるよ&lt;/div&gt;
&nbsp;</pre>
<p>こんな感じで書かれてあったとして、そのまま</p>
<pre class="javascript">suzunari<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">&quot;flashcontents&quot;</span><span style="color: #66cc66;">&#41;</span></pre>
<p>してしまうと</p>
<pre>&nbsp;
&lt;div id=&quot;flashcontents&quot;&gt;ここにFlashブログパーツが表示されるよ[SWF]&lt;/div&gt;
&nbsp;</pre>
<p>こんな感じでもとあった文章とかに付け足される形で表示してしまうので、いったん</p>
<pre>&nbsp;
&lt;div id=&quot;flashcontents&quot;&gt;&lt;/div&gt;
&nbsp;</pre>
<p>こうして空にしておいて</p>
<pre>&nbsp;
&lt;div id=&quot;flashcontents&quot;&gt;[SWF]&lt;/div&gt;
&nbsp;</pre>
<p>こうSWFに差し変わるように書くといいですよ、って事ですね。</p>
<p>なので先ほどのコードで言うと</p>
<pre class="javascript"><span style="color: #009900; font-style: italic;">//readyのタイミングまで待つ</span>
suzunari<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">ready</span><span style="color: #66cc66;">&#40;</span>
<span style="color: #003366; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #009900; font-style: italic;">//jQueryでエレメントを取得しておく</span>
	<span style="color: #003366; font-weight: bold;">var</span> target = jQuery<span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'#flashcontents'</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #009900; font-style: italic;">//一旦中身を消す</span>
	target.<span style="color: #006600;">html</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">''</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #009900; font-style: italic;">//そのあとwriteする</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span>target<span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span>;</pre>
<p>っちゅう順番でものごとを処理しとるゆうことになります。</p>
<h4>jack_swfが呼び出されるタイミングを取得したい</h4>
<p>全画面ジャックを開始する関数が「<strong>jack_swf</strong>」でして、この関数の中ではさらに</p>
<pre class="javascript"><span style="color: #003366; font-weight: bold;">function</span> jack_swf<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
	<span style="color: #009900; font-style: italic;">//前処理</span>
	before_jack<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #009900; font-style: italic;">//全画面ジャック開始</span>
	select<span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'jack'</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span>document.<span style="color: #006600;">body</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #009900; font-style: italic;">//後処理</span>
	after_jack<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre>
<p>（本当はもうちょっと複雑な書き方してますが）簡単に言うとこんな感じの処理になってますので、じゃあbefore_jackをオーバーライドか何かする形で全画面ジャック前のタイミングにいろいろできないかな？？と思ったのですがこれに関しては僕のスキルでは理解できず、たんにこんな方法で代替しました。</p>
<pre class="javascript">suzunari<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">ready</span><span style="color: #66cc66;">&#40;</span>
<span style="color: #003366; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #009900; font-style: italic;">//新しくstart_jack_swfって関数を作って、Flashからもそっちを呼び出して貰う事にする。</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #006600;">start_jack_swf</span> = <span style="color: #003366; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
		<span style="color: #009900; font-style: italic;">//全画面ジャックが始まる前は必ずページの一番上までスクロールする</span>
		jQuery<span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'html,body'</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">animate</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#123;</span> scrollTop: <span style="color: #CC0000;">0</span> <span style="color: #66cc66;">&#125;</span>, <span style="color: #3366CC;">'fast'</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #006600;">jack_swf</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #009900; font-style: italic;">//clear_swfも同じ</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #006600;">start_clear_swf</span> = <span style="color: #003366; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
		<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #006600;">clear_swf</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #009900; font-style: italic;">//こっから先はさっき説明したwriteんところ</span>
	<span style="color: #003366; font-weight: bold;">var</span> target = jQuery<span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'#swfVisual'</span><span style="color: #66cc66;">&#41;</span>;
	target.<span style="color: #006600;">html</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">''</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #66cc66;">&#40;</span>target<span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span>;</pre>
<p>今のところこれでも何の問題もないんですが、もし何かもっとスマートな方法あるよ！って方いましたらぜひぜひコメントいただけたらと思います。</p>
<p>suzunari.jsはほかにも本分解析機能などもあるみたいなんですがこちらはまだ僕は使ったことありませんが、ただ単純にブログパーツを貼るだけでも非常に使い勝手が良い上に全画面ジャックも、他のSWFは一時的に非表示にするなどいろいろと細かいところで自前で作った全画面Flashよりも行き届いていて大変便利なJavaScriptだと思います。<br />
難解なのは僕の説明だけで、ほんとうに説明不要の簡単さでFlashブログパーツの配布が出来てしまいます。<br />
こういった良くできたツールを気前よく公開して下さるのも本当に有り難いですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://utweb.jp/blog/archives/680/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://utweb.jp/blog/archives/680" />
	</item>
		<item>
		<title>[作品紹介]映画「Dr.パルナサスの鏡」ブログパーツ</title>
		<link>http://utweb.jp/blog/archives/613</link>
		<comments>http://utweb.jp/blog/archives/613#comments</comments>
		<pubDate>Wed, 27 Jan 2010 06:52:39 +0000</pubDate>
		<dc:creator>頼子</dc:creator>
				<category><![CDATA[作品紹介]]></category>
		<category><![CDATA[After Effects]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[ブログパーツ]]></category>

		<guid isPermaLink="false">http://utweb.jp/blog/?p=613</guid>
		<description><![CDATA[やっと水回りの大掃除や年賀状もとい寒中見舞いなどの用意ができて、年末の雰囲気を満喫中のＵＴＷＥＢです。
今年第1弾のリリースとなった案件のご紹介です。

映画「Dr.パルナサスの鏡」欲望を写す鏡ブログパーツ
http:/ [...]]]></description>
			<content:encoded><![CDATA[<p>やっと水回りの大掃除や年賀状もとい寒中見舞いなどの用意ができて、年末の雰囲気を満喫中のＵＴＷＥＢです。<br />
今年第1弾のリリースとなった案件のご紹介です。<br />
<strong><br />
映画「Dr.パルナサスの鏡」欲望を写す鏡ブログパーツ</strong><br />
<a href="http://www.parnassus.jp/blogparts/index.html" target="_blank">http://www.parnassus.jp/blogparts/index.html</a></p>
<div id="attachment_615" class="wp-caption aligncenter" style="width: 310px"><a href="http://utweb.jp/blog/wp-content/uploads/2010/01/blog_cap20100127.jpg"><img class="size-medium wp-image-615" title="映画：Dr.パルナサスの鏡「欲望を写す鏡」ブログパーツ" src="http://utweb.jp/blog/wp-content/uploads/2010/01/blog_cap20100127-300x224.jpg" alt="宇都宮ウエブ制作所は「マッド・サイエンティスト」でした" width="300" height="224" /></a><p class="wp-caption-text">宇都宮ウエブ制作所は「マッド・サイエンティスト」でした</p></div>
<p>ブログパーツ内のフォームに名前を入力するだけで、あなたの秘められた欲望が明らかになっちゃうよ！！というブログパーツを制作しました。</p>
<p>この映画には超豪華俳優陣（ヒース・レジャー、ジョニー・デップ、ジュード・ロウ、コリン・ファレル）が出演しており、一枚だけの写真をつかって、様々な表情のパターンを作る必要がありました。<br />
はじめは口からアゴにかけて切り取って、腹話術人形的に動かそうかと思っていたのですが、ハリウッド俳優さんということもあってもう少し自然なイメージで表情をつけることに。</p>
<p>ちょっと分かりにくいですが、口周り・眉頭まわりの動きを、以前ご紹介したＡｆｔｅｒＥｆｆｅｃｔｓの「<a href="http://utweb.jp/blog/archives/488">パペットツール</a>」を使用して、基本のプラス顔・マイナス顔のべースを制作、眉の動きやマンガ的装飾パーツはFlash上で乗せています。<br />
「照れる」「幸せ」「泣く」「怒る」「ショック」「誇らしげ」「焦り」とバリエーション豊かに結果を教えてくれますんで、是非いろんな名前で楽しんでみて下さい！</p>
]]></content:encoded>
			<wfw:commentRss>http://utweb.jp/blog/archives/613/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://utweb.jp/blog/archives/613" />
	</item>
	</channel>
</rss>

