如何多次追加Child(元素).(相同元素)
How to appendChild(element) many times. (The same element)
我的问题是:可以添加相同的元素而不重写相同的变量吗。我正在创建一个滑块,并且我需要将具有类slide-el
的div
附加到块slider
中。这是代码的一部分
var body, html, sliderBody, btnLeft, btnRight, i, parts, vHeight, vWidth;
//Variable definitions
var i = 0,
parts = 3,
//Main html elements
body = document.body,
html = document.element,
//viewport Height and Width
vHeight = window.innerHeight,
vWidth = window.innerWidth,
sliderBody = _id("slider"),
btnLeft = _id("btn-left"),
btnRight = _id("btn-right"),
urls = ["http://www.wallpapereast.com/static/images/pier_1080.jpg",
"http://www.wallpapereast.com/static/images/pier_1080.jpg",
"http://www.wallpapereast.com/static/images/pier_1080.jpg",
"http://www.wallpapereast.com/static/images/pier_1080.jpg"];
slide = _createEl("div");
slide.className += "slide-el";
function _id(el){
return document.getElementById(""+ el +"");
}
function _createEl(el){
return document.createElement(""+ el +"");
}
window.onload = function(){
slideLayout();
}
function slideLayout(){
for(var i=0; i < urls.length; i++){
sliderBody.appendChild(slide);
}
}
问题是,我不能多次附加同一个元素。它只创建一个元素而不是4个。
为了让你更好地理解,我做了一把小提琴:
https://jsfiddle.net/ud7dvn3z/
appendChild
将在将节点附加到新位置之前将节点从其所在位置移除,因此您需要制作节点的副本。您可以使用cloneNode
。true
使cloneNode
执行深度克隆,即使用其所有子节点。
for(var i = 0; i < urls.length; i++){
sliderBody.appendChild(slide.cloneNode(true));
}
大家好!我找到了答案。我必须放
slide = _createEl("div");
slide.className += "slide-el";
进入CCD_ 8循环。现在看起来是这样的:
for(var i=0; i < urls.length; i++){
slide = _createEl("div");
slide.className += "slide-el";
sliderBody.appendChild(slide);
}
相关文章:
- 使用 JavaScript 一次为一个元素设置多个属性
- 聚合物:在不同的视图模型中多次使用元素
- 只要用户将鼠标悬停在jQuery中的某个元素上,就可以执行多次单击
- 为什么它不断多次遍历数组元素
- 如何多次追加Child(元素).(相同元素)
- jquery多次在元素之间插入html
- addEventListener对所有元素都有效,但有时它会提醒消息两次或多次
- 绑定到同一函数的角度元素.避免对每个摘要进行多次调用
- 如何选择类名以多次开头的元素
- 如果用户多次单击元素,如何避免争用条件
- 鼠标悬停在一个 span 元素上多次触发
- 防止HTML5拖放功能多次放置同一元素
- 事件调用在 ajax 替换元素后多次
- 多次绑定 jStepper 到输入元素
- 在DOM中对相同元素进行多次搜索
- JQuery函数为每个元素运行多次
- 查找在同一元素中多次出现的单词
- Vue.js:为什么我的v-else指令会导致我的元素被多次渲染
- 如何全局获取一个HTML元素并多次使用它
- 为什么对新创建的 jQuery 元素进行多次“.appendTo”调用只附加一次