第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

在網(wǎng)格中排列動(dòng)態(tài)創(chuàng)建的 div

在網(wǎng)格中排列動(dòng)態(tài)創(chuàng)建的 div

白豬掌柜的 2023-10-30 15:54:26
我正在嘗試?yán)L制一個(gè)蝕刻草圖,用戶收到提示,輸入他們想要在網(wǎng)格中輸入多少個(gè)正方形(div),但我無(wú)法將這些 div 組織到網(wǎng)格中。這是我的代碼(請(qǐng)注意,我知道“grid-template-rows”和“grid-template-columns”不正確,這就是我要做的)const container = document.getElementById('container')const div = document.createElement('div')const butt = document.getElementById('reset')function changeColor() {    event.target.setAttribute('style', 'background-color: #434141;')}function makeGrid(x) {    x = prompt('how many squares (? by ?)')    let i = 0;    while (i < x * x) {        let dye = document.createElement('div')        dye.classList.add('dye')        container.appendChild(dye)        i++;        dye.addEventListener('mouseover', changeColor)        butt.addEventListener('click', () => {            dye.setAttribute('style', 'background-color: grey;')        })    }}makeGrid()#container {    display: grid;     grid-template-rows: auto;     grid-template-columns: 1fr 1fr;    background-color: #2196F3;    width: 600px;    height: 600px;    margin: auto;    margin-top: 60px;    max-height: 600px;    max-width: 600px;   }.dye {    background-color: grey;    border: solid black 1px;}#reset{    color: white;    background-color: black;    margin-left: 500px;    margin-top: 20px;    outline: none;}<!DOCTYPE html><html><head>    <link rel="stylesheet" href="style.css">    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title></head><body>    <div id="container">            </div><button id="reset">Reset Grid</button>    <script src="index.js"></script></body></html>
查看完整描述

3 回答

?
慕尼黑的夜晚無(wú)繁華

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超6個(gè)贊

您可以通過 JavaScript 更改網(wǎng)格模板列,以使用重復(fù)值動(dòng)態(tài)添加列數(shù)。

document.getElementById('container').style.gridTemplateColumns?=?`repeat(${x},?1fr)`

const container = document.getElementById('container')

const div = document.createElement('div')

const butt = document.getElementById('reset')



function changeColor() {


? ? event.target.setAttribute('style', 'background-color: #434141;')

}



function makeGrid(x) {


? ? x = prompt('how many squares (? by ?)')



? ? let i = 0;

? ??

? ? document.getElementById('container').style.gridTemplateColumns = `repeat(${x}, 1fr)`?


? ? while (i < x * x) {


? ? ? ? let dye = document.createElement('div')

? ? ? ? dye.classList.add('dye')

? ? ? ? container.appendChild(dye)


? ? ? ? i++;


? ? ? ? dye.addEventListener('mouseover', changeColor)


? ? ? ? butt.addEventListener('click', () => {

? ? ? ? ? ? dye.setAttribute('style', 'background-color: grey;')

? ? ? ? })


? ? }


}

makeGrid()

#container {

? ? display: grid;

? ? ?grid-template-rows: auto;

? ? ?grid-template-columns: 1fr 1fr;

? ? background-color: #2196F3;

? ? width: 600px;

? ? height: 600px;

? ? margin: auto;

? ? margin-top: 60px;

? ? max-height: 600px;

? ? max-width: 600px;

? ?

}


.dye {

? ? background-color: grey;

? ? border: solid black 1px;

}




#reset{

? ? color: white;

? ? background-color: black;

? ? margin-left: 500px;

? ? margin-top: 20px;

? ? outline: none;

}

<!DOCTYPE html>

<html>


<head>

? ? <link rel="stylesheet" href="style.css">

? ? <meta charset="UTF-8">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>Document</title>

</head>


<body>


? ? <div id="container">

? ? ? ??

? ? </div>

<button id="reset">Reset Grid</button>

? ? <script src="index.js"></script>

</body>


</html>


查看完整回答
反對(duì) 回復(fù) 2023-10-30
?
慕俠2389804

TA貢獻(xiàn)1719條經(jīng)驗(yàn) 獲得超6個(gè)贊

您可以使用flexbox、 forbetter browser support和 easy to use。


const container = document.getElementById("container");

const div = document.createElement("div");

const butt = document.getElementById("reset");


function changeColor() {

  event.target.style.backgroundColor = "#434141";

}


function makeGrid(x) {

  let num = prompt("how many squares (? by ?)");

  num = Number(num);

  const containerW = 600;

  for (let i = 0; i < num * num; i++) {

    let dye = document.createElement("div");

    dye.classList.add("dye");

    dye.style.flexBasis = `${Math.floor(containerW / num - 4)}px`;

    dye.style.height = `${Math.floor(containerW / num - 4)}px`;

    dye.addEventListener("mouseover", changeColor);

    container.appendChild(dye);

  }

  butt.addEventListener("click", () => {

    document

      .querySelectorAll(".dye")

      .forEach(dye => (dye.style.backgroundColor = "grey"));

  });

}

makeGrid();

#container {

  display: flex;

  flex-wrap: wrap;

  background-color: #2196F3;

  justify-content: space-evenly;

  width: 600px;

  height: 600px;

  margin: auto;

  margin-top: 60px;

  max-height: 600px;

  max-width: 600px;

}


.dye {

  background-color: grey;

  border: solid black 1px;

}


#reset {

  color: white;

  background-color: black;

  margin-left: 500px;

  margin-top: 20px;

  outline: none;

}

.snippet-result-code {

 height: 700px!important;

}

<div id="container">


    </div>

    <button id="reset">Reset Grid</button>

    <script src="app.js"></script>


查看完整回答
反對(duì) 回復(fù) 2023-10-30
?
夢(mèng)里花落0921

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超6個(gè)贊

您不需要每次循環(huán)執(zhí)行時(shí)都聲明一個(gè)事件,

您也可以使用.style.backgroundColor更改 BGC 而不是分配新的樣式屬性


function changeColor() {

    event.target.setAttribute('style', 'background-color: #434141;')

}



function makeGrid() {


    x = prompt('how many squares (? by ?)')

    let z = 0;

    while (z < x * x) {


        let dye = document.createElement('div')

        dye.classList.add('dye')

        container.appendChild(dye)

        z++;

    }


    let squares = document.getElementById('container').querySelectorAll('.dye');

    for (j = 0; j < squares.length; j++) {

        squares[j].addEventListener('mouseover', changeColor)

    }


    document.getElementById('reset').addEventListener('click', () => {

        for (i = 0; i < squares.length; i++) {

            // squares[i] = each  dye element

            squares[i].style.backgroundColor = 'gray';

        }

    });

}

makeGrid()

      #container {

        display: grid;

        grid-template-rows: auto;

        grid-template-columns: 1fr 1fr;

        background-color: #2196f3;

        width: 600px;

        height: 600px;

        margin: auto;

        margin-top: 60px;

        max-height: 600px;

        max-width: 600px;

      }


      .dye {

        background-color: grey;

        border: solid black 1px;

      }


      #reset {

        color: white;

        background-color: black;

        margin-left: 500px;

        margin-top: 20px;

        outline: none;

      }

    <div id="container"></div>

    <button id="reset">Reset Grid</button>


查看完整回答
反對(duì) 回復(fù) 2023-10-30
  • 3 回答
  • 0 關(guān)注
  • 213 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)