小编Wis*_*cat的帖子

javascript addEventListener 不工作不止一次

我正在尝试做一个相对简单的 javascript 程序/页面,只有 3 个滑块 RGB 来影响正方形和圆形的颜色。

当我将事件侦听器与输入元素“内联”时,它工作得很好:即, onchange="someFunction(x,y)"

但是,当我将事件侦听器移到 javascript 中并使用 时addEventListener,它仅在页面加载时工作一次,然后再也不会工作......几乎就像 aremoveEventListener已被调用,但我还没有这样做。

是的,在调用 javascript 之前,我确保所有元素都加载到页面上。

我已经修改了这段代码,只是为了给我一个 ALERT 而不是实际调用我想要的函数slideUpdate,只是为了调试目的。

这是: JAVASCRIPT:

var colorBox = document.getElementById("colorbox");
var colorCircle = document.getElementById("colorCircle");
var colorPicker = document.getElementById("colorPicker");
var sliderRed = document.getElementById("Red");
var sliderGreen = document.getElementById("Green");
var sliderBlue = document.getElementById("Blue");

//sliderRed.addEventListener("onchange", alertForDebug() );
//sliderRed.addEventListener("onclick", alert(sliderRed.value) );

document.addEventListener('DOMContentLoaded', function () {
    alert("document loaded!");
    sliderRed.addEventListener("change", alert(sliderRed.value) );
    //document.querySelector('#Red').addEventListener('change', slideUpdate(sliderRed.value, sliderRed.id) );
    //document.querySelector('#Green').addEventListener('onchange', slideUpdate(this.value, this.id) );
    //document.querySelector('#Blue').addEventListener('onchange', slideUpdate(this.value, this.id) );
} …
Run Code Online (Sandbox Code Playgroud)

javascript eventhandler

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

eventhandler ×1

javascript ×1