Tuesday, May 3, 2011

คลิกลิ้งค์เปิดหน้าต่างใหม่

เนื่องจากเว็บใหม่ๆ ที่ออกแบบตามข้อกำหนดของ XHTML 1.x ไม่อนุญาตให้ใช้โค้ด target _blank ในลิ้งค์เพื่อให้เปิดหน้าต่างใหม่ (จะใช้ก็ใช้ได้ แต่เป็นสิ่งที่ไม่ถูกต้อง) อย่างเช่นเว็บ google yahoo facebook hi5 และอีกหลายๆ เว็บที่อยู่ในประเภทเว็บบอร์ดสมัยใหม่ เว็บบล็อก เว็บในเมืองไทยหลายๆ เว็บก็เป็นเช่นนั้นแล้ว คือกดลิ้งค์แล้ว ไม่เปิดหน้าต่างใหม่
แต่ลิ้งค์ที่เปิดหน้าต่างใหม่ มักจะใช้ในกรณีเปิดไปเว็บอื่น ถ้ายังอยู่ในเว็บเดิมจะเปิดในหน้าต่างเดิม

XHTML 1.x ออกแบบโครงสร้างของภาษาให้รัดกุมขึ้นเพื่อให้ อุปกรณ์หลายๆ ชนิดสามารถเปิดอ่านและแสดงผลได้อย่างถูกต้อง อย่างเช่น โทรศัพท์เคลื่อนที่ (มือถือ) เครื่องเล่นเกมทุกชนิด หรืออุปกรณ์อื่นๆ ที่สามารถเล่นอินเทอร์เน็ตได้ ถ้าเปิดหน้าใหม่หลายๆ หัวข้อ อาจทำให้อุปกรณ์เหล่านั้นทำงานช้าหรือแฮงค์ไปเลยก็ได้ เนื่องจากอุปกรณ์เหล่านั้นไม่มีหน่วยความจำที่มากเพียงพอต่อการแสดงผลหลายๆ หน้าในเวลาเดียวกัน ถึงเปิดได้หลายหน้า ก็คงยากลำบากที่จะต้องกดเลือกหน้าต่างที่จะดูในแต่ละหน้า

ถ้าเปิด หน้าต่างใหม่แล้วผลที่ตามมา
- เว็บเบราเซอร์ของผู้ใช้งานใช้หน่วยความจำมากกว่าเดิม มีผลทำให้ทำงานช้าลง
- เว็บเซิร์ฟเวอร์ทำงานหนัก

ถ้าหากเปิดที่หน้าต่างเดิม
- เครื่องผู้ใช้งานไม่เปลืองหน่วยความจำ
- เว็บเซิร์ฟเวอร์ไม่ต้องทำงานหนัก

วิธีง่ายๆ ถ้ายังไม่ชินกับการเปิดหน้าเดิม แล้วต้องการเปิดหน้าต่างใหม่
- ถ้ายังใช้หน้าต่างเดิม ไม่เปิดหน้าต่างใหม่ เมื่ออ่านกระทู้เสร็จแล้ว กด back ของเว็บบราวเซอร์กลับไปอ่านหน้าเดิมได้ หรือใช้เมนู navigator ที่อยู่ข้างบนซ้าย หรือเมนูดร็อปดาวน์ที่อยู่ล่างขวา
- ถ้าต้องการเปิดหน้าต่างใหม่ กด Shift+คลิกที่ลิ้งค์
- ถ้าต้องการเปิดแท็บใหม่ (เว็บบราวเซอร์รุ่นใหม่ใช้แท็บได้หมดแล้ว) กด Ctrl+คลิกที่ลิ้งค์ที่ หรือคลิกที่ปุ่มกลางของเมาส์
* แนะนำให้ใช้วิธีเปิดแท็บใหม่ เครื่องผู้ใช้งานจะใช้หน่วยความจำน้อยกว่าเปิดหน้าต่างใหม่ ลองค้นหาในเว็บก็ได้ว่า new window vs new tab อันไหนดีกว่า หรือลองสังเกตที่เครื่องของผู้ใช้งานเองก็ได้ว่า เปิดแบบไหน โหลดได้เร็วกว่ากัน

หนทางแก้ไขในอนาคต ถ้าเว็บบราวเซอร์รองรับโค้ดใหม่ที่ทำให้คลิกลิ้งค์แล้วเปิดแท็บใหม่ แทนที่จะเปิดหน้าต่างใหม่ ก็คงจะใช้วิธีนั้นแทน หรือใช้วิธีให้ผู้ใช้งานเลือกว่าต้องการจะเปิดลิ้งค์ในหน้าเดิมหรือเปิด หน้าต่างใหม่




ขอบคุณผู้ให้ความรู้
http://www.sindrauto.com/

------------

0 comments: