2005年6月 6日
新しいウィンドウを開くとき
元記事はこちら。
『 質問受付掲示板:URL』
http://www.pchajime.com/cgi-bin/situmon/thread.cgi?number=130069
JavaScript を使って、新しいウィンドウを開くようなリンク、よく見掛けますしぼくも使います。
window.open('hoge.htm' , 'hoge');
みたいなヤツ。
でもこれ、ユーザーさんがスクリプトを無効にしていると、リンクが機能しなくなっていまいます。
困ります。
制作者サイドでは、見てくれない人が出るのは ちょっとイヤです。
ユーザーさんサイドでは、このリンククリックしても何も起きないよ!。
制作者は出来る限り、ユーザーさんが持つ「機会」を失わせてはいけないと ぼくは思います。(無理なときもあるけど)。
リンク先を 「見られるひと」、「見られない人」 を生み出してしまうわけで、ページ自体のユーザーさん達に対する公平さを損なうことになり、問題だと思うのです。
これを救済する方法として、以下のようなコーディングが考えられます。
<script type="text/javascript">
document.write("スクリプト有効環境用の");
document.write("HTMLタグ");
document.write("<div class='hide'>");
</script>
<a href="hoge.htm" target="newHoge">hogeへ</a>
<script type="text/javascript">
document.write('</div>');
</script>
詳しくはこちらのページをご覧になって下さい。
投稿者 hamayo : 22:28 | コメント (1) | トラックバック
2005年2月26日
Word でインタラクティブ囲い文字
「インタラクティブ」なんて大それたタイトルだけど、汎用性のない、子供の遊びレベルのコードです。
元記事はこちらの掲示板
たったあれだけのコードだけど、Word の VBA も奥が深いというか、ワケがわからんというか、なんともはや。
除菌ちゃんのアドバイスを参考に、ActiveDocument.Pathプロパティを使って、カレントドキュメントのパスを得ることで、たぶんどこでも動くようになったはず。
まぁでも、Word で、しかもただ○で囲むためだけに VBA 使うのって、はなはだ自己満足。
Private Sub Label1_Click() Label1.Picture = _ LoadPicture(ActiveDocument.Path + "\i\you_maru.gif") Label2.Picture = _ LoadPicture(ActiveDocument.Path + "\i\huyou.gif") End Sub Private Sub Label2_Click() Label1.Picture = _ LoadPicture(ActiveDocument.Path + "\i\you.gif") Label2.Picture =_ LoadPicture(ActiveDocument.Path + "\i\huyou_maru.gif") End Sub
docファイルのダウンロード(you_huyou_check.lzh:14,792bytes)
でもね、やっぱりウチじゃ相対パスで動くんです。
なので、ワケがわからんし、なんともはや なのです。
投稿者 hamayo : 22:31 | コメント (0) | トラックバック
2005年2月21日
セルの背景色をマウスオーバー/アウト
リンク元はこちらの掲示板です。
対象のオブジェクトと色名を、引数渡ししてやれば良いかもしれませんね。
どれもみな同じ色にするのであれば、色名は引数を使う必要はないですが、こうした方が汎用的かな、と思ったので・・・。
<script language="JavaScript" type="text/JavaScript">
<!--
function bgColorChanger(o,hex){
o.style.backgroundColor = hex;
}
//-->
</script> <body> <table>
<tr>
<td onMouseOver="bgColorChanger(this,'#82c3d5');" onMouseOut="bgColorChanger(this,'');">uuh</td>
<td onMouseOver="bgColorChanger(this,'#cfcab4');" onMouseOut="bgColorChanger(this,'');">yah</td>
<td onMouseOver="bgColorChanger(this,'#afc032');" onMouseOut="bgColorChanger(this,'');">tah</td>
</tr>
</table>
</body>
実際のページだと、こんな感じ(←クリックで別ページ)で。
