⊗jsPrCndMChA 62 of 62 menu

ลูกศรสำหรับเปลี่ยนเดือนในปฏิทินด้วย JavaScript

ตอนนี้ขอให้เราสร้างลูกศรสำหรับเปลี่ยนเดือนใต้ปฏิทิน กัน เราจะปรับเปลี่ยนโค้ด HTML:

<div id="parent"> <div id="calendar"> <div class="info">ม.ค. 2020</div> <table> <thead> <tr> <th>จ.</th> <th>อ.</th> <th>พ.</th> <th>พฤ.</th> <th>ศ.</th> <th>ส.</th> <th>อา.</th> </tr> </thead> <tbody class="body"></tbody> </table> <div class="nav"> <a href="#" class="prev">←</a> <a href="#" class="next">→</a> </div> </div> </div>

เราจะปรับเปลี่ยนโค้ด CSS:

#parent { text-align: center; } #calendar { display: inline-block; } #calendar td, #calendar th { padding: 10px; border: 1px solid black; text-align: center; } #calendar .nav, #calendar .info { text-align: center; } #calendar a { color: blue; font-size: 25px; text-decoration: none; } #calendar a:hover { color: red; } #calendar .active { color: red; }

ให้เราได้ลิงก์ของลูกศรมาเก็บในตัวแปร:

let prev = calendar.querySelector('.prev'); let next = calendar.querySelector('.next');

การอภิปราย

ตอนนี้ให้เราอภิปรายกันว่าจะแก้ไขปัญหานี้อย่างไร ที่จริงแล้วโค้ดปฏิทินของเราเขียนมาด้วย การขยายตัวที่ดี: เรามีฟังก์ชัน draw, ซึ่งวาดปฏิทินสำหรับเดือนที่กำหนด ดังนั้น เมื่อคลิกที่ลูกศร เราก็สามารถ วาดปฏิทินใหม่ด้วยเดือนอื่นได้ (และอาจจะเป็นปีอื่นด้วย)

นี่คือตัวอย่างสิ่งที่เราสามารถทำได้เมื่อ คลิกที่ลูกศรเดือนถัดไป:

next.addEventListener('click', function() { draw(body, getNextYear(year, month), getNextMonth(month)); });

อย่างที่คุณเห็น นี่ใช้ฟังก์ชัน getNextYear และ getNextMonth ให้เราอภิปรายกันว่ามันควรทำอะไร

ตามชื่อของมัน ฟังก์ชัน getNextYear จะได้ปีถัดไป ที่นี่หมายถึง ว่าถ้าตอนนี้เป็นเดือนธันวาคม เมื่อเปลี่ยน ไปเดือนถัดไป ปีควรเพิ่มขึ้น เป็น 1 แต่ถ้าตอนนี้ไม่ใช่เดือนธันวาคม ฟังก์ชันก็ควรคืนค่าปีปัจจุบัน

ฟังก์ชัน getNextMonth ควรได้ เดือนถัดไป มันจะเพิ่มเลขเดือน ด้วยหนึ่งสำหรับทุกเดือน ยกเว้น เดือนธันวาคม ส่วนเดือนถัดไปของเดือนธันวาคม ก็คือเดือนมกราคมที่มีเลข 0

การดำเนินการที่คล้ายกันควรทำเมื่อ คลิกที่ปุ่มเดือนก่อนหน้า:

prev.addEventListener('click', function() { draw(body, getPrevYear(year, month), getPrevMonth(month)); });

โปรดทำให้ปุ่มเปลี่ยนเดือนทำงาน

ทำให้ข้อมูลเหนือปฏิทิน ตรงกับเดือนและปีที่แสดง

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ