เรามักจะพบกับสถานการณ์นี้เมื่อทำการพัฒนา:
A.SWF ถูกเพิ่มลงในหน้าเว็บหน้า A.SWF และ HTML มีแถบเลื่อนในเวลาเดียวกัน ผู้จัดการโครงการขอข้อกำหนด BT --- เมื่อประมวลผลการเลื่อนเมาส์ A.SWF หน้า HTML ไม่ได้ทำการเลื่อนมิฉะนั้นหน้า HTML จะเลื่อน!
ควรทำอะไร?
วิธีที่ 1 :1. เมื่อย้ายเมาส์ไปยังพื้นที่เลื่อน A.SWF: บอก JS ให้ถอดการฟังการเลื่อนเมาส์ของเบราว์เซอร์ออก
2. เมื่อเมาส์ถูกย้ายออกจากพื้นที่เลื่อน A.SWF: บอก JS ให้เพิ่มเบราว์เซอร์เพื่อเลื่อนเมาส์
3. ตั้งค่า wmode ของ a.swf ไปที่หน้าต่าง
สรุป: การตั้งค่า WMODE ไปยังหน้าต่างอาจไม่เป็นไปตามข้อกำหนดของโครงการซึ่งทำให้ A.SWF บล็อกหน้า HTML ใด ๆ ด้านล่าง; นอกจากนี้เมื่อเมาส์ถูกย้ายเข้าไปในพื้นที่เลื่อนของ A.SWF ให้กดแท็บ ALT+เพื่อสลับหน้า JS จะไม่ได้รับแจ้งให้เพิ่มเบราว์เซอร์ลงในจอภาพการเลื่อนดังนั้นจึงไม่มีกระบวนการเลื่อนหลังจากสลับกลับไปที่หน้า HTML หลังจากการดำเนินการ
วิธีที่ 2 :1.A.SWF ยกเลิกเหตุการณ์การฟังการเลื่อนเมาส์ของตัวเองและเพิ่มอินเทอร์เฟซการประมวลผลแบบเลื่อนสำหรับ JS ในการโทรเช่น WheelToflash (ค่า)
2. เมื่อเมาส์ถูกย้ายเข้าไปในพื้นที่การเลื่อน A.SWF: บอก JS เช่น MouseIsinFlashWheelRange = TRUE
3. เมื่อเมาส์เคลื่อนตัวออกจากพื้นที่การเลื่อน A.SWF: บอก JS เช่น MouseIsinflashWheelRange = FALSE;
4. JS รับฟังกิจกรรมการเลื่อนเมาส์ ในฟังก์ชั่นการประมวลผลการฟังการฟังเราต้องตัดสินต่อไปนี้
รหัส JavaScript:
คัดลอกรหัส