如果只是悬停在单选按钮上,我们如何创建onmouseover
事件和javascript以制作单选按钮checked
,而不是单击单选按钮?请不要jQuery。
<input type="radio" class="tryout" name="example" onmouseover="checkButton()" checked="checked">
<input type="radio" class="tryout" name="example" onmouseover="checkButton()">
<input type="radio" class="tryout" name="example" onmouseover="checkButton()">
<input type="radio" class="tryout" name="example" onmouseover="checkButton()">
答案 0 :(得分:1)
您可以在元素中传递checkButton
函数作为参数,然后将element.checked
设置为true。例如:
function checkButton(element){
element.checked = true;
}
<input type="radio" class="tryout" name="example" onmouseover="checkButton(this)" checked="check">
<input type="radio" class="tryout" name="example" onmouseover="checkButton(this)">
<input type="radio" class="tryout" name="example" onmouseover="checkButton(this)">
<input type="radio" class="tryout" name="example" onmouseover="checkButton(this)">
答案 1 :(得分:1)
我甚至会添加到jakekimds所做的事情,并避免将您的javascript内联到您的输入上以分离演示文稿和功能。所以你会得到
HTML
<input type="radio" class="tryout" name="example1">
<input type="radio" class="tryout" name="example2">
<input type="radio" class="tryout" name="example3">
<input type="radio" class="tryout" name="example4">
JS
var inputs = document.getElementsByClassName('tryout');
[].forEach.call(inputs, function(el){
el.addEventListener('mouseenter',function(){
this.checked = true;
});
});
答案 2 :(得分:0)
如果将单选按钮包装在容器中,则可以使用document.getElementById附加事件处理程序。这样,如果您的JavaScript发生了变化,那么您的HTML就不会发生。
<span id="radio-buttons">
<input type="radio" class="tryout" name="example" checked="check">
<input type="radio" class="tryout" name="example">
<input type="radio" class="tryout" name="example">
<input type="radio" class="tryout" name="example">
</span>
<script>
document.getElementById("radio-buttons").onmouseover = function (e) {
e.target.checked = true;
}
</script>