当前位置: 首页 > 面试题库 >

输入类型=范围上的onchange事件未在拖动时在Firefox中触发

楚奇逸
2023-03-14
问题内容

当我玩时<input type="range">,只有在将滑块放到新位置时Firefox才会触发onchange事件,在该位置上,Chrome和其他人在拖动滑块时触发onchange事件。

如何在Firefox中拖动来实现?

function showVal(newVal){

    document.getElementById("valBox").innerHTML=newVal;

}


<span id="valBox"></span>

<input type="range" min="5" max="10" step="1" onchange="showVal(this.value)">

问题答案:

显然Chrome和Safari是错误的:onchange仅应在用户释放鼠标时才触发。要获取连续更新,您应该使用该oninput事件,该事件将通过鼠标和键盘捕获Firefox,Safari和Chrome中的实时更新。

但是,oninputIE10不支持此功能,因此最好的选择是将两个事件处理程序结合起来,如下所示:

<span id="valBox"></span>
<input type="range" min="5" max="10" step="1" 
   oninput="showVal(this.value)" onchange="showVal(this.value)">


 类似资料:
  • 我想开发一个带有div和一些样式的文件拖放组件: dragenter:更改div边框颜色 dragleave:还原为原始div边框颜色 在Firefox 35(Ubuntu)上,当div有一个滚动条(水平或垂直)并且在滚动条中移动文件时,我会发生以下事件: < li>dragenter:移过div边框 < li>dragenter:在滚动条上移动 < li>dragleave:离开滚动条 所以我在

  • 在我的Angular 2应用程序中,我使用普通的HTML5输入类型“范围”为用户提供一个简单的滑块组件。 我需要知道用户何时释放滑块。释放意味着使用鼠标完成拖动并释放鼠标按钮。为此,我参加了OnMouseUp活动。然而,这不适用于我使用触摸设备的情况。 在我的平板电脑,我可以拖动滑块aroun,但当释放它与我的手指的事件是没有发射。 我知道,这不是鼠标,但是什么事件相当于在鼠标上运行并在触摸设备上

  • 我尝试用dart构建一个应用程序。我在另外两个中注入了一个服务类来共享一些数据。现在的问题是,我不知道如何通过另一个类属性改变(async)来触发一个类中的事件(onChange)。

  • 本文向大家介绍如何在javascript中手动触发onchange事件?,包括了如何在javascript中手动触发onchange事件?的使用技巧和注意事项,需要的朋友参考一下 您可以使用dispatchEvent方法在单个元素上调度事件。假设您有一个带有onChange事件的元素测试- 事件处理程序- 手动触发事件- 这将记录以下内容-

  • 本文向大家介绍在Firefox中可以用于垂直方向的HTML5输入类型范围?,包括了在Firefox中可以用于垂直方向的HTML5输入类型范围?的使用技巧和注意事项,需要的朋友参考一下 现在有可能。在Firefox Web浏览器中可以使用垂直方向的HTML5输入类型范围。 以下是CSS-