Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么赢了';JavaScript函数是否创建HTML元素?_Javascript_Html_Dom - Fatal编程技术网

为什么赢了';JavaScript函数是否创建HTML元素?

为什么赢了';JavaScript函数是否创建HTML元素?,javascript,html,dom,Javascript,Html,Dom,我有一个方法,就是在另一个div中创建div。。。但是它不会起作用 方法如下: populateSquares(){ let relatedTagToPopulation = document.getElementById("questionp"); let whatTextIs = relatedTagToPopulation.textContent; for (let u=0;u<this.stemQuestions.length;u++){ i

我有一个方法,就是在另一个div中创建div。。。但是它不会起作用

方法如下:

populateSquares(){
    let relatedTagToPopulation = document.getElementById("questionp");
    let whatTextIs = relatedTagToPopulation.textContent;
    for (let u=0;u<this.stemQuestions.length;u++){
        if (this.stemQuestions[u]==whatTextIs){
            var populateSquaresPertinentInt = u;
        }
    }
    for  (let i=0;i<this.stemAnswers.length;i++){
        if (i==populateSquaresPertinentInt){
            let numberOfSquaresToAdd = this.stemAnswers[i].length;
            for (let j=0;j<numberOfSquaresToAdd;j++){
                let elToAdd = document.createElement("<div id='ans"+j+"' class='lans'></div>"); 
                let elToAddInto = document.getElementById("answeri"); 
                elToAddInto.appendChild(elToAdd); 
            }
        }
    }
}
populateSquares(){
让relatedTagToPopulation=document.getElementById(“问题P”);
设whatTextIs=relatedTagToPopulation.textContent;

对于(让u=0;u如果您使用的是JavaScript,则应遵循文档:,此处:

如果您使用的是jQuery,则可以使用:

let elToAdd = jQuery("<div id='ans"+j+"' class='lans'></div>")
让elToAdd=jQuery(“”)

如果您使用的是JavaScript,则应遵循文档:,此处:

如果您使用的是jQuery,则可以使用:

let elToAdd = jQuery("<div id='ans"+j+"' class='lans'></div>")
让elToAdd=jQuery(“”)
创建标记的三种方法 以下示例都做了相同的事情:✱
创建一个

唯一的参数是
标记名(例如
“DIV”
“SPAN”
“IFRAME”
,等等)。创建后,需要将其添加到DOM中:

这是一个古老但稳定的方法,但创建一个裸体标签需要两行代码。需要更多代码来分配属性和内容。

此属性将从目标标记内的给定字符串中解析标记。如果使用
=
运算符,则目标标记的所有内容将被
htmlString
覆盖。如果使用
+=
运算符,则
htmlString
将附加到目标标记内的内容

第二个参数是要插入的
htmlSting

main{
显示:表格;
边框:3倍脊灰;
填充:2x10px 10px;
}
h1{
字体:900小盘1.5rem/1塔荷马;
边际下限:8px
}
氢{
字体:700小盘1.2rem/1塔荷马;
边际下限:8px
}
部分{
边框:2倍实心#000;
填充:2px 8px 8px;
}
文章{
字体:400 1rem/1.25 Arial;
}
t:以前{
内容:属性(id)“:”;
字号:700;
}

文件
创建标记的三种方法 以下示例都做了相同的事情:✱
创建一个

唯一的参数是
标记名(例如
“DIV”
“SPAN”
“IFRAME”
,等等)。创建后,需要将其添加到DOM中:

这是一个古老但稳定的方法,但创建一个裸体标签需要两行代码。需要更多代码来分配属性和内容。

此属性将从目标标记内的给定字符串中解析标记。如果使用
=
运算符,则目标标记的所有内容将被
htmlString
覆盖。如果使用
+=
运算符,则
htmlString
将附加到目标标记内的内容

第二个参数是要插入的
htmlSting

main{
显示:表格;
边框:3倍脊灰;
填充:2x10px 10px;
}
h1{
字体:900小盘1.5rem/1塔荷马;
边际下限:8px
}
氢{
字体:700小盘1.2rem/1塔荷马;
边际下限:8px
}
部分{
边框:2倍实心#000;
填充:2px 8px 8px;
}
文章{
字体:400 1rem/1.25 Arial;
}
t:以前{
内容:属性(id)“:”;
字号:700;
}

文件

createElement
采用标记名,如
“div”
,而不是HTML。您可以单独分配属性。
createElement
采用标记名,如
“div”
,而不是HTML。您可以单独分配属性。请注意,
id
属性也由属性反映,因此您可以执行:
elToAdd.id=“ans”+j
请注意,
id
属性也由属性反映,因此您可以执行:
elToAdd.id=“ans”+j
Nope,#2根本不做同样的事情。从DOM的角度来看,它确实删除了元素及其所有子元素,然后附加一个新元素,具有相同的标记,以及与上一个和一个新元素的子元素共享相同标记的新元素。如果有任何变量指向这些子元素之一,则他们指向的e元素现在已经不在文档中了。如果你有任何事件侦听器,它们就不在了。请注意,先生,谢谢。@kaido做了
。innerText
。textContent
删除了
+=
中的任何内容?不,2完全没有做同样的事情。从DOM的角度看,它确实删除了元素及其所有子元素,然后附加一个具有相同标记的新元素,以及与上一个元素和新元素的子元素共享相同标记的新元素。如果您有任何变量指向这些子元素之一,则它们指向的元素现在已关闭文档。如果您有任何事件侦听器,则它们已不存在。请注意,先生,谢谢。@kaido有
.innerText
.textContent
+=
清除任何内容?
let elToAdd = jQuery("<div id='ans"+j+"' class='lans'></div>")
const post = document.createElement("ARTICLE");
post.className = "post";
document.getElementById('main').appendChild(post);
document.querySelector('main').innerHTML += `<article class='post'></article>`;
"beforebegin" <div id="target"> "afterbegin" text content "beforeend" </div> "afterend"
document.getElementsByTagName('MAIN')[0].insertAdjacentHTML('afterbegin', `
  <article class='post'></article>
`);