是否可以通过鼠标悬停事件来控制单选按钮的显示?
目标是在鼠标结束时查看它并在鼠标离开时取消选中。但只有在点击时才会检查它。
答案 0 :(得分:0)
您可以使用以下内容:
$("input:radio").hover(function(){
$(this).prop('checked', true);
}, function(){
//MouseOut event
$(this).prop('checked', false);
}).click(function(){
//Unbind the hover event for all the radio buttons
$("input:radio").unbind('mouseenter mouseleave')
//Check clicked radio button
$(this).prop('checked', true);
});
我为你做了一个小提琴:http://jsfiddle.net/B6qBz/
答案 1 :(得分:0)
稍微摆弄它之后,我想出了这个......看看这个fiddle,看看是否有诀窍......哦,既然你没有提到任何特定的语言,所以我实现了这一点用jQuery ...希望它有所帮助
这可能不是完美的解决方案,但它绝对符合要求:
HTML:
<input type="radio" name="cols" id="col-1" />
<br />
<input type="radio" name="cols" id="col-2" />
<br />
<input type="radio" name="cols" id="col-3" />
JS:
var clicked = false;
var clickedId;
$('input').click(function () {
clicked = true;
clickedId = $(this).attr('id');
});
$('input').hover(function () {
$(this).prop('checked', true);
}, function () {
if (clicked === true) {
$('#' + clickedId).prop('checked', true);
} else {
$(this).prop('checked', false);
}
});