มันมีทางที่จะย้าย divs ผ่านอาเรย์?

0

คำถาม

ตัวเองสอนจาวาสคริปต์ ฉันอยากจะสร้างเมนูเหมือนกับ Netflix อยู่ไหนอย่างที่คุณเลื่อนถูกหรือเหลือคุณสามารถผ่านไปแสดง/ดูหนังอย่างไรก็ตามมันจะอยู่กับซ้ายและลูกธนูสักดอก, ผมก็ไม่ต่างกันหรอกอีถ้าฉันย้ายล่ะ block2 คงอยู่ใน block1 ตำแหน่ง block3 ใน block2,etc

ฉันคิดว่าฉันสามารถกำหนดแต่ละบล็อคตำแหน่งในตารางคู่ลำดับ: variance menuBar=[block1,block2,block3,block4];งั้น iterate ผ่านอาเรย์

for(var i=0; i < menuBar.length(); i++){
switch (e.key) {
            case 'ArrowLeft':
                i--;
                GoThroughMenu();
                break;
            case 'ArrowRight':
                i++;
                GoThroughMenu();
                break;
}

และ GoThroughMenu()จะย้ายช่วงตึก

block1.style.left = menuBar[i].style.left + 'px';
block1.style.top = menuBar[i].style.top + 'px';

ตอนนี้ nothings ย้ายมีข้อผิดพลาดในวิธีที่ฉันไปเกี่ยวกับเรื่องนี้?

html javascript
2021-11-24 04:25:23
2

คำตอบที่ดีที่สุด

2

left แล้ว top css คุณสมบัติของเพียงทำงานกับคนที่ไม่ใช่position: static ค่า(ซึ่งเป็นค่าปริยาย position ค่าของทุกส่วนประกอบ).

พยายามให้ menuBar เป็นรายการ position: relative;.

2021-11-24 04:29:17
1

แค่เพิ่ม position: relative; ไป#ล่อง มันจะทำงานสบายดี

เช็คอยู่ที่นี่ทำงานตัวอย่างเช่น https://jsfiddle.net/milytulip/x52goy3s/2/

#box{
    width: 1000px;
    height: 200px;
    background-color: black;
    position: relative;
}
2021-11-24 04:45:07

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่