我有一张桌子,每个人都有一个最喜欢的选择。我使用了两个星图在最喜欢和不喜欢之间切换。(我没有使用复选框,因为我也想要 IE8)。
我想出了下面的例子。
HTML
<div class="on" id="on_1" onclick="div_off(this.id);" style="display:none">off</div>
<div class="off" id="off_1" onclick="div_on(this.id);">on</div>
<div class="on" id="on_2" onclick="div_off(this.id);" style="display:none">off</div>
<div class="off" id="off_2" onclick="div_on(this.id);">on</div>
<div class="on" id="on_3" onclick="div_off(this.id);" style="display:none">off</div>
<div class="off" id="off_3" onclick="div_on(this.id);">on</div>
<div class="on" id="on_4" onclick="div_off(this.id);" style="display:none">off</div>
<div class="off" id="off_4" onclick="div_on(this.id);">on</div>
CSS
<style>
.on, .off {
cursor: pointer;
}
.on{
color: red;
}
.off{
color: blue;
}
</style>
JS:
<script>
function div_on(onId){
onId = onId.replace('off_','');
var on = document.getElementById('on_'+onId);
var off = document.getElementById('off_'+onId);
on.style.display = "block"
off.style.display = "none"
}
function div_off(offId){
offId = offId.replace('on_','');
var on = document.getElementById('on_'+offId);
var off = document.getElementById('off_'+offId);
on.style.display = "none"
off.style.display = "block"
}
</script>
有没有其他简单的方法可以做到这一点。我试图避免任何 js 类/jquery。
示例:http: //jsfiddle.net/yellowandred/LZkVb/1/