javascript - 如何用JS引用动态创建的div

标签 javascript html

所以我正在创建 div 的 onclick 并逐渐为它们提供更大的 ID。然后我想更改每个 div 的 CSS 属性,但我似乎无法使用 document.getElementById 选择它。

显然我在这里遗漏了一些非常简单的东西,任何建议或阅读将不胜感激。

JS Fiddle

一些相关的 Javascript:

function createDiv(){
    i++;
    var newDiv = document.createElement("div");
    newDiv.id = "newDiv"+i;
    var e = document.getElementById("newDiv1");
    e.innerHTML = "hello";
    e.className = "newDivs";
    var x = 50*i;
    e.style.left = x+"px";
    e.style.top = 200+"px";
    //but nothing appears
}

最佳答案

你还没有将你的 div 附加到 DOM 树,你应该先附加它然后尝试获取它的引用:

function createDiv(){
    i++;
    var newDiv = document.createElement("div");
    newDiv.id = "newDiv"+i;
    document.body.appendChild(newDiv); // <--- Append it here
    var e = document.getElementById("newDiv1");
    e.innerHTML = "hello";
    e.className = "newDivs";
    var x = 50*i;
    e.style.left = x+"px";
    e.style.top = 200+"px";
    //but nothing appears
}

关于javascript - 如何用JS引用动态创建的div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25333357/

相关文章:

javascript - react 历史记录替换不允许后退按钮

javascript - 带有Typescript的Angular2,如何在延迟加载模块中使用Plupload CDN脚本文件?

javascript - 在页面加载时运行 jquery 延迟加载而不是滚动

jquery - 如何在 Bootstrap 多选复选框及其标签之间添加空格

java - java中输入文本、输入密码、单选按钮、复选框、文本区域等

html - Bootstrap 垂直对齐按钮但不是响应内容

jquery - 我无法使用 JQuery Mobile 让我的背景填满整个屏幕

javascript - 如何使用 jQuery 制作一个简单的 mouseon 弹出工具提示?

javascript - 如何使用onchange事件?

表单提交时未调用 JavaScript 闭包函数