speckyboyの記事が参考になった
のでメモ書き。ラジオボタンを
jQueryで以前のDiggっぽくする
という内容です。CSSによるスタ
イルも楽に出来るのは魅力ですね。
旧Digg・・・と言ってもピンと来ないかもですけど、ラジオボタンを少し凝ったものにしよう、というもの。※あくまでTipsとしてご覧下さい。
Classic Digg-Style Radio Buttons
こんな感じのラジオボタンです・・・実際に表示されているのはラジオボタンでは無いのですが、それは後述します。
まず、動作サンプル
Sample
表示されているボタンはa要素です。a要素とラジオボタンをjQueryで連動させてchecked
にします。
コードです。
コード
$("a").on("click", function(e){ e.preventDefault(); if($(this).hasClass("sel")) { } else { $("a.sel").removeClass("sel"); $(this).addClass("sel"); var rid = $(this).attr('id'); var value = '[value="'+rid+'"]'; $('input:radio[name="category"]').filter(value).attr('checked', true); } });
ラジオボタンそのものはCSSでdisplay:none;
になっています。表示されているa要素をクリックすると、そのa要素のidに合うvalueを持つinput要素がchecked
になる、という仕組みです。
↑ display:none;
を外したサンプルになります。
↑ Chromeのデベロッパーツールでdisplay:none;
されたinput要素のchecked
が確認出来ます。
このまま使う前にもう少し検証しないとですけど、方法が参考になったので備忘録として書きました。詳しい内容は以下でご確認下さい。