<?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/"
	>

<channel>
	<title>Selfkleptomaniac &#187; Javascript</title>
	<atom:link href="http://selfkleptomaniac.org/archives/category/javascript/feed" rel="self" type="application/rss+xml" />
	<link>http://selfkleptomaniac.org</link>
	<description>Blogging is a disease: selfkleptomania, your normal condition.</description>
	<lastBuildDate>Mon, 19 Jul 2010 16:29:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/>		<item>
		<title>Peclのspidermonkey</title>
		<link>http://selfkleptomaniac.org/archives/1030</link>
		<comments>http://selfkleptomaniac.org/archives/1030#comments</comments>
		<pubDate>Tue, 10 Mar 2009 04:36:21 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/?p=1030</guid>
		<description><![CDATA[jsが入っているのにJavascriptのインタプリタ以外に使い道がないなあ、と思っていたらPeclにspidermonkeyというのが追加されていた。検索するともう記事が見つかったりして、楽しそうなのでさっそくインストール。PHP5.3beta0以上が必要なので、テスト環境のPHPもついでに更新。php.iniのextension_dirを extension_dir=/usr/lib/php/exntesions/no-debug-non-zts-20090115 のように更新しておかないといけない。 で、pecl install spidermonkey-alphaを実行したら見事にこける。ヘッダファイルjsapi.hがないとのこと。でもそのファイルは/usr/include/直下にある。で、手動でspidermonkey拡張モジュールをダウンロードしてconfigureの中身を見ると、 for i in $PHP_SPIDERMONKEY /usr/local /usr; do for j in js mozjs; do test -f $i/include/$j/jsapi.h &#038;&#038; SPIDERMONKEY_BASEDIR=$i &#038;&#038; SPIDERMONKEY_INCDIR=$i/include/$j &#038;&#038; SPIDERMONKEY_LIBNAME=$j &#038;&#038; break done test -f $i/include/$j/jsapi.h &#038;&#038; break done if test -z "$SPIDERMONKEY_INCDIR"; then { { echo "$as_me:$LINENO: error: jsapi.h not found. Please reinstall libjs." >&#038;5 echo [...]]]></description>
			<content:encoded><![CDATA[<p>jsが入っているのにJavascriptのインタプリタ以外に使い道がないなあ、と思っていたら<a href="http://pecl.php.net/package/spidermonkey">Peclにspidermonkey</a>というのが追加されていた。<a href="http://d.hatena.ne.jp/shimooka/20090309/1236579091">検索するともう記事が見つかった</a>りして、楽しそうなのでさっそくインストール。PHP5.3beta0以上が必要なので、テスト環境のPHPもついでに更新。php.iniのextension_dirを</p>
<pre>
extension_dir=/usr/lib/php/exntesions/no-debug-non-zts-20090115
</pre>
<p>のように更新しておかないといけない。</p>
<p>で、pecl install spidermonkey-alphaを実行したら見事にこける。ヘッダファイルjsapi.hがないとのこと。でもそのファイルは/usr/include/直下にある。で、手動でspidermonkey拡張モジュールをダウンロードしてconfigureの中身を見ると、</p>
<pre>
for i in $PHP_SPIDERMONKEY /usr/local /usr; do
    for j in js mozjs; do
      test -f $i/include/$j/jsapi.h &#038;&#038; SPIDERMONKEY_BASEDIR=$i
&#038;&#038; SPIDERMONKEY_INCDIR=$i/include/$j &#038;&#038; SPIDERMONKEY_LIBNAME=$j
&#038;&#038; break
    done
    test -f $i/include/$j/jsapi.h &#038;&#038; break
  done
  if test -z "$SPIDERMONKEY_INCDIR"; then
    { { echo "$as_me:$LINENO: error: jsapi.h not found. Please reinstall libjs." >&#038;5
echo "$as_me: error: jsapi.h not found. Please reinstall libjs." >&#038;2;}
   { (exit 1); exit 1; }; }
  fi
</pre>
<p>こんな箇所があり、spidermonkeyのヘッダファイルは/usr/includeか/usr/local/include直下ではなくその下のjsかmozjsディレクトリでないといけないらしい。なんなんだ。<a href="http://selfkleptomaniac.org/archives/755">以前spidermonkeyをインストール</a>したときの手順に問題があるんだろうか。</p>
<p>まあ、ヘッダファイルはみんなjs*.hという名前だったので、さくっと</p>
<pre>
# mkdir /usr/include/js &#038;&#038; cd /usr/include/js
# for i in `ls ../js*.h`; do ln -s $i `echo $i | sed "s/..\///"`; done
# pecl install spidermonkey-alpha
</pre>
<p>適当なことをやって、ようやくインストール完了。ちなみにmozjsにするとやっぱりpeclからのインストールは出来なかった。なぜだ？</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=1030&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/1030/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE7だと誤ったフォーマットのRGB色指定はエラー</title>
		<link>http://selfkleptomaniac.org/archives/908</link>
		<comments>http://selfkleptomaniac.org/archives/908#comments</comments>
		<pubDate>Wed, 21 Jan 2009 10:26:59 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Tuit]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/?p=908</guid>
		<description><![CDATA[Internet Explorer 7で下のJavascriptを実行するとエラーになるのね。 &#60;span id="here" style="color:#000000"&#62;hoge&#60;/span&#62; &#60;script&#62; document.getElementById("here").style.color = '#0000000'; &#60;/script&#62;]]></description>
			<content:encoded><![CDATA[<p>Internet Explorer 7で下のJavascriptを実行するとエラーになるのね。</p>
<pre>
&lt;span id="here" style="color:#000000"&gt;hoge&lt;/span&gt;
&lt;script&gt;
document.getElementById("here").style.color = '#0000000';
&lt;/script&gt;
</pre>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=908&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/908/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>くらえiPhone!</title>
		<link>http://selfkleptomaniac.org/archives/574</link>
		<comments>http://selfkleptomaniac.org/archives/574#comments</comments>
		<pubDate>Mon, 14 Jul 2008 04:04:59 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/?p=574</guid>
		<description><![CDATA[iPhoneでアクセスしてきたら、とりあえず先に９０度回転しておいて、縦にしても横にしてもずっと画面が傾いたままにしてしまえばいい。（参照） Safariでアクセスして動いてたからたぶんこれで大丈夫だ。 iPhone専用ページ update: 実機を借りたので試してみたらだめだった。畜生め。 update2: いちおう動いていた。 update3: くそっ!Windowの幅や高さが変わったら回転するというのはできなかった。画面をフリップさせてもwindow.outerWidthやwindow.outerHeightの値は変わらないらしい。 function flipYou(){ document.body.style['-webkit-transform']='rotate(90deg)'; height = window.outerHeight; base = 90; setInterval(function(){ if(height != window,outerHeight){ base += 90; com = 'rotate(' + base + 'deg)'; document.body.style['-webkit-transform']=com; height = window.outerHeight; } }, 5000); } これではちゃんと検知しない。heightをwidthにしてもダメ。]]></description>
			<content:encoded><![CDATA[<p>iPhoneでアクセスしてきたら、とりあえず先に９０度回転しておいて、縦にしても横にしてもずっと画面が傾いたままにしてしまえばいい。（<a href="http://http://ajaxian.com/archives/flipping-out-over-safari">参照</a>）</p>
<p>Safariでアクセスして動いてたからたぶんこれで大丈夫だ。<br />
<a href="http://selfkleptomaniac.org/iphone.html"><br />
iPhone専用ページ</a></p>
<p>update:  実機を借りたので試してみたらだめだった。畜生め。<br />
update2: いちおう動いていた。<br />
update3: くそっ!Windowの幅や高さが変わったら回転するというのはできなかった。画面をフリップさせてもwindow.outerWidthやwindow.outerHeightの値は変わらないらしい。</p>
<pre>
function flipYou(){
        document.body.style['-webkit-transform']='rotate(90deg)';
        height = window.outerHeight;
        base = 90;
        setInterval(function(){
                if(height != window,outerHeight){
                        base += 90;
                        com = 'rotate(' + base + 'deg)';
                        document.body.style['-webkit-transform']=com;
                        height = window.outerHeight;
                }
        }, 5000);
}
</pre>
<p>これではちゃんと検知しない。heightをwidthにしてもダメ。</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=574&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/574/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>クッキーモンスター</title>
		<link>http://selfkleptomaniac.org/archives/521</link>
		<comments>http://selfkleptomaniac.org/archives/521#comments</comments>
		<pubDate>Wed, 11 Jun 2008 10:02:18 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/?p=521</guid>
		<description><![CDATA[ファイル名や変数名にはみんないろいろこだわりがあると思うが、同好の士を見つけるとうれしくなる。 live365.comのプレイリスト表示ページのソースだが、クッキーを扱うらしきJavaScriptの名前に驚いた。3年くらい前から、仕事でもクッキーの名前の一部や何かのキー、関数名、変数名に自分でもこの名前を使っていたので。]]></description>
			<content:encoded><![CDATA[<p>ファイル名や変数名にはみんないろいろこだわりがあると思うが、同好の士を見つけるとうれしくなる。</p>
<p><a href='http://selfkleptomaniac.org/wp-content/uploads/2008/06/ws000002.jpg'><img src="http://selfkleptomaniac.org/wp-content/uploads/2008/06/ws000002-300x225.jpg" alt="" title="ws000002" width="300" height="225" class="alignnone size-medium wp-image-522" /></a></p>
<p>live365.comのプレイリスト表示ページのソースだが、クッキーを扱うらしきJavaScriptの名前に驚いた。3年くらい前から、仕事でもクッキーの名前の一部や何かのキー、関数名、変数名に自分でもこの名前を使っていたので。</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=521&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/521/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使い道がわからん</title>
		<link>http://selfkleptomaniac.org/archives/441</link>
		<comments>http://selfkleptomaniac.org/archives/441#comments</comments>
		<pubDate>Thu, 10 Apr 2008 02:02:07 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/archives/441</guid>
		<description><![CDATA[もうすぐ廃止になるJavaScriptのescape関数なのだが、例えばこんな風に文字列をescape関数に渡すと &#60;html&#62; &#60;head&#62; &#60;meta http-equiv="content-type" content="text/html;charset=utf-8" /&#62; &#60;script language="javascript"&#62; function test(){ var str = document.getElementById('tibet').innerHTML; var esc = escape(str); alert(esc); } &#60;/script&#62; &#60;/head&#62; &#60;body&#62; &#60;div id="tibet"&#62;ダライラマ&#60;/div&#62; &#60;button onClick="test();"&#62;test&#60;/button&#62; &#60;/body&#62; &#60;/html&#62; alertに表示されるのは「%u30C0%u30E9%u30A4%u30E9%u30DE」という書式になっている文字列で、ようするにescape関数は文字列を%uで始まる16進数のかたまりにする。 これをそのままPHPに渡してデコードするには、 &#60;?php $str = '%u30C0%u30E9%u30A4%u30E9%u30DE'; $decode = preg_replace_callback("/(%u)([0-9a-zA-Z]+)/", '_decode', $str); function _decode($array){ return mb_convert_encoding(pack("H*", $array[2]), 'UTF-8', 'UCS-2'); } ?&#62; こんな感じで処理する。逆に、PHP側で文字列をJavaScriptのescape処理と同様に加工する場合は &#60;?php $str = 'ダライラマ'; [...]]]></description>
			<content:encoded><![CDATA[<p>もうすぐ廃止になるJavaScriptのescape関数なのだが、例えばこんな風に文字列をescape関数に渡すと</p>
<pre>&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv="content-type" content="text/html;charset=utf-8" /&gt;
&lt;script language="javascript"&gt;
function test(){
	var str = document.getElementById('tibet').innerHTML;
	var esc = escape(str);
	alert(esc);
}
&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id="tibet"&gt;ダライラマ&lt;/div&gt;
&lt;button onClick="test();"&gt;test&lt;/button&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>alertに表示されるのは「%u30C0%u30E9%u30A4%u30E9%u30DE」という書式になっている文字列で、ようするにescape関数は文字列を%uで始まる16進数のかたまりにする。</p>
<p>これをそのままPHPに渡してデコードするには、</p>
<pre>&lt;?php
$str = '%u30C0%u30E9%u30A4%u30E9%u30DE';
$decode = preg_replace_callback("/(%u)([0-9a-zA-Z]+)/", '_decode', $str);
function _decode($array){
	return mb_convert_encoding(pack("H*", $array[2]), 'UTF-8', 'UCS-2');
}
?&gt;
</pre>
<p>こんな感じで処理する。逆に、PHP側で文字列をJavaScriptのescape処理と同様に加工する場合は</p>
<pre>&lt;?php
$str = 'ダライラマ';
preg_match_all("/(.)/u", $str, $matches);
foreach($matches[1] as $k =&gt; $v){
	$matches[1][$k] = '%u' . strtoupper(bin2hex(mb_convert_encoding($v, 'UCS-2', 'UTF-8')));
}
$encode = implode("", $matches[1]);
?&gt;
</pre>
<p>でできる。</p>
<p>と、ここまではいいのだが、JavaScriptでエスケープ処理された文字列をやり取りして面白いことができないか考えても、特に何も思いつかないので困った。</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=441&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/441/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yahoo! JapanでJavaScriptのエラ＿</title>
		<link>http://selfkleptomaniac.org/archives/371</link>
		<comments>http://selfkleptomaniac.org/archives/371#comments</comments>
		<pubDate>Thu, 25 Oct 2007 16:21:54 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/archives/371</guid>
		<description><![CDATA[Yahoo! Japanのトップページにアクセスすると、デバッグモードにしてLog JavaScript ExceptionsをオンしたSafariではコンソールに http://www.yahoo.co.jp/:TypeError &#8211; Value undefined (result of expression hm.isHomePage) is not object. というエラーが出てくる。なんだろう。たぶんここに書かれているのと同じだから、Operaでも再現するらしい。というわけでFirefoxで開いてみたのだが、 これじゃねえの？]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.yahoo.co.jp/">Yahoo! Japan</a>のトップページにアクセスすると、デバッグモードにしてLog JavaScript ExceptionsをオンしたSafariではコンソールに</p>
<blockquote><p>http://www.yahoo.co.jp/:TypeError &#8211; Value undefined (result of expression hm.isHomePage) is not object.</p></blockquote>
<p>というエラーが出てくる。なんだろう。たぶん<a href="http://d.hatena.ne.jp/MrT/20051005#YahooJapan">ここに書かれているのと同じ</a>だから、Operaでも再現するらしい。というわけでFirefoxで開いてみたのだが、</p>
<p><a href="http://selfkleptomaniac.org/wp-content/uploads/2007/10/yahoo.png" onclick="window.open('http://selfkleptomaniac.org/wp-content/uploads/2007/10/yahoo.png','popup','width=425,height=176,scrollbars=no,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=yes,left=0,top=0');return false"><img src="http://selfkleptomaniac.org/wp-content/uploads/2007/10/yahoo-tm.jpg" height="100" width="241" border="1" hspace="4" vspace="4" alt="Yahoo" /></a></p>
<p>これじゃねえの？</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=371&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/371/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>dieとexit</title>
		<link>http://selfkleptomaniac.org/archives/353</link>
		<comments>http://selfkleptomaniac.org/archives/353#comments</comments>
		<pubDate>Mon, 22 Oct 2007 01:35:56 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/archives/353</guid>
		<description><![CDATA[exit関数（dieはこのエイリアス）の引数に文字列を渡すと、メッセージとして文字列を出力してスクリプトが終了するのだが。 PHP4.2以降ではintegerを渡すと終了時のステータスコードになる。0は正常終了なので、適時利用すればいい。利用できるのは254までの整数で、255は予約されている。 255を越える値を渡すと無視される。 で、何が言いたいのかというと、 public static function response($str){ header('Expires: ' . gmdate('D, j M Y H:i:s', 1)); print("\xef\xbb\xbf"); die($str); } うっかりこんなコードを書くと、$strに整数しか入っていない場合は何も出力されない。Ajaxでサーバ側からのレスポンスを記述するときによくやってしまいがち。 public static function response($str){ header('Expires: ' . gmdate('D, j M Y H:i:s', 1)); print("\xef\xbb\xbf"); print($str); exit; } これが正しい。って、自分がやってしまったわけですが。]]></description>
			<content:encoded><![CDATA[<p>exit関数（dieはこのエイリアス）の引数に文字列を渡すと、メッセージとして文字列を出力してスクリプトが終了するのだが。</p>
<p>PHP4.2以降ではintegerを渡すと終了時のステータスコードになる。0は正常終了なので、適時利用すればいい。利用できるのは254までの整数で、255は予約されている。</p>
<p>255を越える値を渡すと無視される。</p>
<p>で、何が言いたいのかというと、</p>
<pre class="prettyprint">public static function response($str){
    header('Expires: ' . gmdate('D, j M Y H:i:s', 1));
    print("\xef\xbb\xbf");
    die($str);
}
</pre>
<p>うっかりこんなコードを書くと、$strに整数しか入っていない場合は何も出力されない。Ajaxでサーバ側からのレスポンスを記述するときによくやってしまいがち。</p>
<pre class="prettyprint">public static function response($str){
    header('Expires: ' . gmdate('D, j M Y H:i:s', 1));
    print("\xef\xbb\xbf");
    print($str);
    exit;
}
</pre>
<p>これが正しい。って、自分がやってしまったわけですが。</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=353&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/353/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prototype Portal Class</title>
		<link>http://selfkleptomaniac.org/archives/297</link>
		<comments>http://selfkleptomaniac.org/archives/297#comments</comments>
		<pubDate>Fri, 31 Aug 2007 17:06:20 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/archives/297</guid>
		<description><![CDATA[コンテンツをブロックに分けて、それぞれをWidgetと称して自由に位置を変更したり非表示にしたりするJavaScriptライブラリ、Prototype Portal Classがyoumosで紹介されている。 PCサイト向けCMSのページ編集機能なんかに使えるな、と思ったら、これってJetspeedの画面みたいだな。]]></description>
			<content:encoded><![CDATA[<p>コンテンツをブロックに分けて、それぞれをWidgetと称して自由に位置を変更したり非表示にしたりするJavaScriptライブラリ、<a href="http://blog.xilinus.com/prototype-portal/test/index.html">Prototype Portal Class</a>が<a href="http://youmos.com/news/prototype_portal_class">youmosで紹介されている</a>。</p>
<p>PCサイト向けCMSのページ編集機能なんかに使えるな、と思ったら、これって<a href="http://www.bluesunrise.com/jetspeed-docs/Slides/Slide4.html">Jetspeedの画面</a>みたいだな。</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=297&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/297/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TinyMCEとページ内リンクのURL</title>
		<link>http://selfkleptomaniac.org/archives/279</link>
		<comments>http://selfkleptomaniac.org/archives/279#comments</comments>
		<pubDate>Wed, 15 Aug 2007 00:41:40 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/archives/279</guid>
		<description><![CDATA[TinyMCEでページ内のアンカーにリンクを挿入しようとすると、#で始まるURLは勝手に親ページのURLを拾ってきて補完して絶対パスに変換してしまう。 http://hoge.com/hoge.cgiにて動作させる リンクアイコンをクリック ポップアップ画面のリンクのところに「#test」と入力 リンクを挿入してポップアップ画面を閉じる HTMLを確認　←　「http://hoge.com/hoge.cgi#test」に補完されている という感じ。該当箇所はlink.js。 // Make anchors absolute if (href.charAt(0) == '#') href = tinyMCE.settings['document_base_url'] + href; これ、仕様なんだけど、いろいろ困るんだよな。]]></description>
			<content:encoded><![CDATA[<p><a href="http://tinymce.moxiecode.com/">TinyMCE</a>でページ内のアンカーにリンクを挿入しようとすると、#で始まるURLは勝手に親ページのURLを拾ってきて補完して絶対パスに変換してしまう。</p>
<p>http://hoge.com/hoge.cgiにて動作させる</p>
<p>リンクアイコンをクリック<br />
ポップアップ画面のリンクのところに「#test」と入力<br />
リンクを挿入してポップアップ画面を閉じる<br />
HTMLを確認　←　「http://hoge.com/hoge.cgi#test」に補完されている</p>
<p>という感じ。該当箇所はlink.js。</p>
<pre>
// Make anchors absolute
      if (href.charAt(0) == '#')
              href = tinyMCE.settings['document_base_url'] + href;
</pre>
<p>これ、仕様なんだけど、いろいろ困るんだよな。</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=279&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/279/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>総論賛成だが</title>
		<link>http://selfkleptomaniac.org/archives/265</link>
		<comments>http://selfkleptomaniac.org/archives/265#comments</comments>
		<pubDate>Wed, 01 Aug 2007 06:32:19 +0000</pubDate>
		<dc:creator>y</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://selfkleptomaniac.org/archives/265</guid>
		<description><![CDATA[「href=&#8221;#&#8221; onclick&#8221;&#8230;&#8221;」はそろそろやめよう 周囲には「萌え野郎に説教されたかねえや」という声もあったが、総論では賛成。ただし、アンダーライン入れるとか文字色を変えるとかもしないといけない。社内ではfake_linkクラスをCSSに追加している。]]></description>
			<content:encoded><![CDATA[<p><a href="http://diary.imou.to/~AoiMoe/2007.07/late.html#2007.07.24_s02">「href=&#8221;#&#8221; onclick&#8221;&#8230;&#8221;」はそろそろやめよう</a></p>
<p>周囲には「萌え野郎に説教されたかねえや」という声もあったが、総論では賛成。ただし、アンダーライン入れるとか文字色を変えるとかもしないといけない。社内ではfake_linkクラスをCSSに追加している。</p>
<img src="http://selfkleptomaniac.org/?ak_action=api_record_view&id=265&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://selfkleptomaniac.org/archives/265/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
