引用 html 元素的 Javascript 函数参数

标签 javascript html function

出于有趣的目的,我想使用 JavaScript 创建一个 100x100 html 表格,并使用 onmouseover 来更改颜色。这就像一种简单的绘画方式,但是当我将 onmouseover 更改为 changeColor 函数时,参数是 ClientXClientY 位置而不是 html 元素。

function createTabel(){
    var div = document.getElementById("paint");
    var table = document.createElement("table");
    table.style.border = "1px solid black";
    for (var i = 0; i < 100; i++){
        var row = document.createElement("tr");
        for (var j = 0; j <100; j++){
            var cell = document.createElement("td");

            cell.onmouseover = changeColor;

            cell.style.height = "3px";
            cell.style.width = "3px";
            cell.style.padding = "0";
            cell.style.margin = "0";

            row.appendChild(cell);
        }
        table.appendChild(row);
    }
    div.appendChild(table);
}

和changeColor函数:

function changeColor(cell){
    var color = document.getElementById("color").value;
    cell.style.backgroundColor = color;
}

如何在没有 id 的情况下访问导致事件的 html 元素?

最佳答案

尝试事件:

function changeColor(e){
    e = e || window.event;
    var el = e.srcElement || e.target; //get the current element(cell)
    var color = document.getElementById("color").value;
    el.style.backgroundColor = color;
}

关于引用 html 元素的 Javascript 函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29917345/

相关文章:

javascript - 如何保存/缓存 dom,以便当您点击后退按钮时页面按原样加载?

javascript - 无法从本地主机向远程服务器发出 ajax 请求

c++ - 资源有限的 HTML 渲染器(良好的内存管理)

python - 如何在 Tree 方法中正确放置 return False 语句?

javascript - Html可折叠点击不展开

javascript 代码执行和 ajax 异步

javascript - 我希望我的 html 网站能够以不同的语言加载

javascript - 为什么我的 javascript 无法运行?

mysql - mysql 中的默认日期

java - 在 NetBeans 中显示函数参数的快捷方式是什么?