ในการสร้าง Template เว็บไซต์ ส่วนประกอบที่สำคัญมากๆในหน้าเว็บนั่นคือแถบเมนู ซึ่งมีไว้แสดงชื่อเมนูหน้าต่างๆของเว็บไซต์ เพื่อความสวยงามและสะดวกในการใช้งานแถบเมนู เมื่อเลื่อนเนื้อหาของหน้าเว็บลงมา แถบเมนูก็ควรจะเลื่อนตามหน้าเว็บลงมาด้วยและอยู่ตำแหน่งบนสุด บทความนี้จึงแนะนำวิธีการ Fix ให้แถบเมนูเลื่อนตามหน้าจอ ในมุมมอง Mobile ด้วย JavaScript ซึ่งมีขั้นตอนดังนี้

 

ใส่โค้ดด้านล่างนี้ลงในไฟล์ index.php ของโฟลเดอร์เทมเพลตที่ต้องการนำไปใช้งาน

<script type="text/javascript">
        jQuery(function($) {
		var h = $('.menu-nav-top').closest('.span8').height();
		$('.menu-nav-top').closest('.span8').css('height', h);
		fixmenu();
                $(window).scroll(function() {
			fixmenu();
                });
		function fixmenu() {
			var c = $('.menu-nav-top').closest('.navbar');
			if($(this).scrollTop() > h) {
				if(!c.hasClass('navbar-fixed-top')) {
					c.addClass('navbar-fixed-top');
					c.css('position', 'fixed');
				}
			} else {
				c.removeClass('navbar-fixed-top');
				c.css('position', 'static');
			}
		}
        });
</script>

 

อธิบายโค้ด

1.หาความสูง header menu ของเว็บไซต์

2.กำหนด event(เหตุการณ์) ตอน Scroll เมื่อหน้าจอเลื่อนลงมาเกินส่วนสูงของ menu

3.เพิ่ม class navbar-fixed-top และกำหนด CSS position เป็น fixed

4.ถ้าเลื่อนจอกลับขึ้นไปข้างบน ให้ลบ class navbar-fixed-top และกำหนด CSS position เป็นแบบไม่ fixed

 

ผลลัพธ์หน้าเว็บหลังจากการ Fix แถบเมนูให้เลื่อนตามหน้าจอในมุมมอง Mobile

แสดงแถบเมนูขณะยังไม่เลื่อนเนื้อหาในหน้าเว็บ
แสดงแถบเมนูขณะยังไม่เลื่อนเนื้อหาในหน้าเว็บ

 

แสดงแถบเมนูเมื่อเลื่อนเนื้อหาในหน้าเว็บลงมา
แสดงแถบเมนูเมื่อเลื่อนเนื้อหาในหน้าเว็บลงมา

เนื้อหาเพิ่มเติม

 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ดูแลเตียงผู้ป่วยอย่างไรให้คนที่บ้านอุ่นใจผู้ใช้ปลอดภัย
โดย mheimhei พฤ 21 ธ.ค. 2023 9:48 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
386
พฤ 21 ธ.ค. 2023 9:48 pm โดย mheimhei View Topic ดูแลเตียงผู้ป่วยอย่างไรให้คนที่บ้านอุ่นใจผู้ใช้ปลอดภัย
คำสั่งเปลี่ยน User เพื่อรันคำสั่งบน Linux Ubuntu
โดย mindphp พ 20 ธ.ค. 2023 4:01 am บอร์ด Linux - Web Server
0
358
พ 20 ธ.ค. 2023 4:01 am โดย mindphp View Topic คำสั่งเปลี่ยน User เพื่อรันคำสั่งบน Linux Ubuntu
โหลดเอกสารแล้วเหมือนถูก blocked แก้ยังไงคะ
โดย Narisara อ 19 ธ.ค. 2023 10:52 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
306
พฤ 21 ธ.ค. 2023 12:59 pm โดย mindphp View Topic โหลดเอกสารแล้วเหมือนถูก blocked แก้ยังไงคะ
มี software ไหนสามารถมาใช้แทน vmware ได้บ้างครับ ที่เป็นแบบ free หรือ license ไม่แพง
โดย Anonymous จ 18 ธ.ค. 2023 4:00 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
492
จ 18 ธ.ค. 2023 4:14 pm โดย mindphp View Topic มี software ไหนสามารถมาใช้แทน vmware ได้บ้างครับ ที่เป็นแบบ free หรือ license ไม่แพง
สอบถามวิธีเช็คสิทธ์ การเข้าชมกระทู้ และการตอบกลับกระทู้ ใน phpBB
โดย flook จ 18 ธ.ค. 2023 1:10 pm บอร์ด สอบถามปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
3
781
ศ 22 ธ.ค. 2023 4:27 pm โดย flook View Topic สอบถามวิธีเช็คสิทธ์ การเข้าชมกระทู้ และการตอบกลับกระทู้ ใน phpBB
สอบถามฟิลด์ price lists ในหน้าตะกร้าสินค้า mooziicart
โดย Thanapoom1514 ศ 15 ธ.ค. 2023 12:26 pm บอร์ด Joomla Development
2
2890
ศ 15 ธ.ค. 2023 12:39 pm โดย Thanapoom1514 View Topic สอบถามฟิลด์ price lists ในหน้าตะกร้าสินค้า mooziicart
อัปเดตระบบการรักษาความปลอดภัยใหม่ของ Joomla 5.0.1 และ 4.4.1 เวอร์ชันล่าสุด
โดย Thanapoom1514 พฤ 14 ธ.ค. 2023 5:59 pm บอร์ด MindPHP News & Feedback
0
332
พฤ 14 ธ.ค. 2023 5:59 pm โดย Thanapoom1514 View Topic อัปเดตระบบการรักษาความปลอดภัยใหม่ของ Joomla 5.0.1 และ 4.4.1 เวอร์ชันล่าสุด
สอบถามปุ่มเลือกเอกสารกดแล้วมันไม่ขึ้น modal ในหน้าเพิ่มเมนู joomla 5 ครับ
โดย Thanapoom1514 พฤ 14 ธ.ค. 2023 11:45 am บอร์ด Joomla Development
2
2408
อ 19 ธ.ค. 2023 7:53 pm โดย Thanapoom1514 View Topic สอบถามปุ่มเลือกเอกสารกดแล้วมันไม่ขึ้น modal ในหน้าเพิ่มเมนู joomla 5 ครับ