与单击单选按钮不同,当简单地悬停在单选按钮上时,我们如何创建一个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()">
发布于 2015-03-19 00:28:34
您将让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)">
发布于 2015-03-19 06:14:16
我甚至会添加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;
});
});
发布于 2015-03-19 00:37:02
如果将单选按钮包装在容器中,则可以使用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>
https://stackoverflow.com/questions/29135047
复制相似问题