gpt4 book ai didi

javascript - 多个 DIV 并排

转载 作者:太空宇宙 更新时间:2023-11-03 22:55:41 25 4
gpt4 key购买 nike

我正在制作一个程序,它应该从一些数据库中检索数据,列出放置在同一个 div 中的按钮上的一些数据,并使用 onclick 按钮形成新的 div,直到它达到某个最大值。为了让这个例子对其他人有用,我没有从数据库中检索数据,而是使用了一些通用数字(值 5 分配给变量 levmax,并且每个 for 循环都有一些分配值,但是所有这些值都应该从数据库中检索)。

我遇到的问题是如何将所有 DIV 并排放置。我在这里找到的所有示例都解释了如果它们是在代码的 HTML 部分创建的,如何对齐它们。但我想在 JS 部分创建我的 DIV。

代码工作正常,除了所有 DIV 彼此相邻的部分。代码大约有 80 行,但我只需要如何对齐 DIV。这是代码:

<html>
<head>
<script>
var lev = 0;
var levmax=5;
var count = 0;
function addBu(){
lev++;
var bo = document.getElementById("kod");
var di = document.createElement('DIV');
for (var i=0; i<3; i++){
var bu= document.createElement('BUTTON');
var te = document.createTextNode('Text');
if(lev===1){
bu.addEventListener("click", novo);
}
var te1 = document.createTextNode(lev.toString());
var br = document.createElement('BR');
bu.id=lev.toString();
bu.appendChild(te);
bu.appendChild(te1);
di.appendChild(bu);
di.appendChild(br);
count++;
}

bo.insertBefore(di, bo.childNodes[0]);
};

function novo(){
if(lev===1){
lev++;
var bo = document.getElementById("kod");
var di = document.createElement('DIV');
for (var i=0; i<4; i++){
var bu= document.createElement('BUTTON');
var te = document.createTextNode('Text');
var te1 = document.createTextNode(lev.toString());
var br = document.createElement('BR');
bu.addEventListener("click", repeat);
bu.id=lev.toString();
bu.appendChild(te);
bu.appendChild(te1);
di.appendChild(bu);
di.appendChild(br);
count++;
}

bo.insertBefore(di, bo.childNodes[0]);
}
function repeat(){
if(lev<levmax){
lev++;
var bo = document.getElementById("kod");
var di = document.createElement('DIV');
for (var i=0; i<2; i++){
var bu= document.createElement('BUTTON');
var te = document.createTextNode('Text');
var te1 = document.createTextNode(lev.toString());
var br = document.createElement('BR');
bu.addEventListener("click", repeat);
bu.id=lev.toString();
bu.appendChild(te);
bu.appendChild(te1);
di.appendChild(bu);
di.appendChild(br);
count++;
}
bo.insertBefore(di, bo.childNodes[0]);
var le=(lev-1).toString();
document.getElementById(le).removeEventListener("click", repeat);
}
}

}
</script>
</head>
<body id="kod" onload="addBu()">
</body>
</html>enter code here

<head>
<script>
var lev = 0;
var levmax=5;
var count = 0;
function addBu(){
lev++;
var bo = document.getElementById("kod");
var di = document.createElement('DIV');
for (var i=0; i<3; i++){
var bu= document.createElement('BUTTON');
var te = document.createTextNode('Text');
if(lev===1){
bu.addEventListener("click", novo);
}
var te1 = document.createTextNode(lev.toString());
var br = document.createElement('BR');
bu.id=lev.toString();
bu.appendChild(te);
bu.appendChild(te1);
di.appendChild(bu);
di.appendChild(br);
count++;
}

bo.insertBefore(di, bo.childNodes[0]);
};

function novo(){
if(lev===1){
lev++;
var bo = document.getElementById("kod");
var di = document.createElement('DIV');
for (var i=0; i<4; i++){
var bu= document.createElement('BUTTON');
var te = document.createTextNode('Text');
var te1 = document.createTextNode(lev.toString());
var br = document.createElement('BR');
bu.addEventListener("click", repeat);
bu.id=lev.toString();
bu.appendChild(te);
bu.appendChild(te1);
di.appendChild(bu);
di.appendChild(br);
count++;
}

bo.insertBefore(di, bo.childNodes[0]);
}
function repeat(){
if(lev<levmax){
lev++;
var bo = document.getElementById("kod");
var di = document.createElement('DIV');
for (var i=0; i<2; i++){
var bu= document.createElement('BUTTON');
var te = document.createTextNode('Text');
var te1 = document.createTextNode(lev.toString());
var br = document.createElement('BR');
bu.addEventListener("click", repeat);
bu.id=lev.toString();
bu.appendChild(te);
bu.appendChild(te1);
di.appendChild(bu);
di.appendChild(br);
count++;
}
bo.insertBefore(di, bo.childNodes[0]);
var le=(lev-1).toString();
document.getElementById(le).removeEventListener("click", repeat);
}
}

}
</script>
</head>
<body id="kod" onload="addBu()">
</body>
</html>

最佳答案

使用 CSS!假设包含 <div>每个元素的 HTML 组件都有一个类名 .item :

.item {
width: 300px;
padding: 20px;
float: left;
}

将对齐所有 <div>的类名 item并排。

其实有很多方法可以做到这一点。下面是一个使用 BootStrap 的例子:

<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
</head>
<body>
<div class="container">
<div class="row">
<div class="db-item col-md-4">

</div>
<div class="db-item col-md-4">

</div>
<div class="db-item col-md-4">

</div>
</div>
</div>
</body>

然后使用您的 JavsScript 技能插入一个新的 </div><div class="row">任何时候你想要一个。在这种情况下,每 3 个元素是理想的。

关于javascript - 多个 DIV 并排,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38531056/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com