Tech エントリー[プログラミング]

a タグの href に # とか javascript:void(0) とかする理由

あとで読む コメント (0) トラックバック (1) Atom/RSS

以下のような記述を見かけるが、これはリンクを無効にするため。

a href="javascript:void(0);"

こうした上で、a タグの onclick で関するを呼び出すパターンが多い。

つまり、以下のような感じ

a href="javascript:void(0)" onclick="function_name(); return false;"

っで、関数呼出し後の return false も肝で、クロスブラウザで挙動を合わせる場合に、onclick に関しても、見せ掛け上、処理が無効となるよう return false する必要がある。

実際には、途中の処理が実行されるので別ウィンドウ開くなどのアクションは正常に処理される。

プログラミング > JavaScript - void(0)

onClick に false を返すと、クリック自体が無効になり、リンクしなくなります。

例:

onClick="location.href='xxx'; ...; return false;"

としてみてはいかがでしょうか。

これで、javascript void(0)というアドレスのウィンドウは開かなくなるはずです。

おしえて!HOME'Sくん

JavaScript: window.open() 小窓

そこで次のようにhref属性で開くURLを指定しておき、window.open()の第一引数には this.hrefを渡し、そして、window.open()の後にreturn false;でhref属性への イベントを抑制するとJavaScriptが有効の場合は小窓、無効または実装されていない 場合は普通のハイパーリンクとなります。

※ アクセシビリティの観点から、この方法が最善だろうと思います。

Amenti - HTML関係の話題

少し違う切り口で void(0) を読む

あとで読む コメント (0) トラックバック (1) Atom/RSS
投稿: 2008年02月25日 16:26 / 最終更新: 2008年02月25日 17:09

» Mac で mkpasswd を使いたい
« JavaScript のコーディング規約 (コーディングスタイル)

タグ (関連キーワード)

トラックバック


ブログパーツのクロスブラウザ対応修正
web2.0的ラボ2008年8月19日 19:10
当方で公開しているブログパーツについて、クロスブラウザ対応に不備が発見されました...

コメント (投稿する)

コメント投稿





エントリー検索



最近のエントリー




テクノラティプロフィール

フィードメーター - Jamz Update (all blogs)

スカウター : Jamz

awasete.oshira.se

あわせて読みたい

track feed
SEO対策 | ブログパーツ


イベント情報

LL魂
08月04日(土)開催 参加予定


クリエイティブ・コモンズ・ライセンス
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.

テクノラティプロフィール