Javascript 如何禁用事件侦听器?或者有一个停止按钮来实现它的功能?

Javascript 如何禁用事件侦听器?或者有一个停止按钮来实现它的功能?,javascript,jquery,html,Javascript,Jquery,Html,请帮我设置一个按钮来停止、暂停或禁用加速计的功能?这是我的代码,谢谢 加速度计读数 函数init(){ var Accelerator=document.getElementById('Accelerator'); if(window.DeviceMotionEvent){ window.addEventListener('devicemotion',函数(事件){ var x=parseInt(事件加速,包括重力x); 变量y=parseInt(事件加速,包括重力); var z=pa

请帮我设置一个按钮来停止、暂停或禁用加速计的功能?这是我的代码,谢谢

加速度计读数


函数init(){
var Accelerator=document.getElementById('Accelerator');
if(window.DeviceMotionEvent){
window.addEventListener('devicemotion',函数(事件){
var x=parseInt(事件加速,包括重力x);
变量y=parseInt(事件加速,包括重力);
var z=parseInt(事件加速,包括重力);
var acce='加速度:
'; acce+='x:'+x+'
y:'+y+'
z:'+z+; Accelerator.innerHTML=acce; }); } }
提供对
.addEventListener()
的命名函数引用,然后在
中使用函数名。removeEventListener()


方法1:不要对侦听器使用匿名函数:将其分配给变量,以便可以将其传递给
removeEventListener


方法2:不要删除侦听器;相反,使用一个标志来确定它是否处于活动状态。如果它在侦听器顶部未处于活动状态,请返回而不产生任何效果。

先生,您能给我一个完整的代码吗?我真的很难修复它,因为我是javascript新手。谢谢,先生,你能给我一个完整的密码吗?我真的很难修复它,因为我是javascript新手。谢谢,@Ronnel.D“如何禁用事件监听器?或者为其功能设置一个停止按钮?”
删除设备运动事件函数removeDeviceMotionEvent(){window.removeEventListener(“devicemotion”,handleAccelerationEvent)};document.getElementById(“stop”).addEventListener(“单击”,removeDeviceMotionEvent)
我已经输入了您的代码,先生,我为removeEventlistener添加了一个函数和一个按钮。而且它不起作用。加速度计读数不工作。。请帮助我停止函数(){window.removeEventListener(“devicemotion”,handleAccelerationEvent)}没有设备运动数据
停止我尝试了你的代码,先生,但我的手机上的加速度计读数不工作。“它不工作”是每次移动手机时加速度计的读数。
<script>

function init() {

  var accelerometer = document.getElementById('accelerometer');

  if(window.DeviceMotionEvent) {

  window.addEventListener('devicemotion', function(event) {

  var x = parseInt(event.accelerationIncludingGravity.x);

  var y = parseInt(event.accelerationIncludingGravity.y);

  var z = parseInt(event.accelerationIncludingGravity.z);

  var acce = 'Acceleration:<br />';

  acce += 'x: ' + x +'<br />y: ' + y + '<br />z: ' + z + ;

  accelerometer.innerHTML = acce;

     });
  }
}
</script>
function handleAccelerationEvent(event) {

  var x = parseInt(event.accelerationIncludingGravity.x);

  var y = parseInt(event.accelerationIncludingGravity.y);

  var z = parseInt(event.accelerationIncludingGravity.z);

  var acce = 'Acceleration:<br />';

  acce += 'x: ' + x +'<br />y: ' + y + '<br />z: ' + z + ;

  accelerometer.innerHTML = acce;

}

function init() {

  var accelerometer = document.getElementById('accelerometer');

  if(window.DeviceMotionEvent) {

    window.addEventListener('devicemotion', handleAccelerationEvent);
  }
}
// remove `devicemotion` event referencing `handleAccelerationEvent` function
window.removeEventListener("devicemotion", handleAccelerationEvent)