การแสดงข้อมูลผ่านภาพสามารถเริ่มการทำงานของเหตุการณ์ที่หน้าโฮสต์สามารถลงทะเบียนเพื่อรับ เหตุการณ์สามารถเริ่มทำงานโดยการกระทำของผู้ใช้ เช่น ผู้ใช้คลิกแผนภูมิ หรืออาจเป็นภายในก็ได้ เช่น ทำให้เหตุการณ์เริ่มทำงานทุก 10 วินาที คุณลงทะเบียนเมธอด JavaScript เพื่อให้ระบบเรียกใช้ทุกครั้งที่เหตุการณ์บางอย่างเริ่มทำงานได้ โดยอาจมีข้อมูลเฉพาะสำหรับเหตุการณ์ดังกล่าว
การแสดงภาพทุกรายการจะกำหนดเหตุการณ์ของตัวเอง และเอกสารสำหรับการแสดงข้อมูลผ่านภาพนั้นควรอธิบายเวลาที่แต่ละเหตุการณ์เริ่มทำงาน ความหมาย และข้อมูลที่ส่งไปยังเครื่องจัดการเหตุการณ์ (เช่น ดูการแสดงภาพข้อมูล orgchart) หน้านี้อธิบายวิธีที่ผู้สร้างการแสดงภาพสามารถสั่งให้เหตุการณ์เริ่มทำงาน หากต้องการดูวิธีลงทะเบียนเพื่อรับเหตุการณ์ โปรดดูหน้าการจัดการกิจกรรม
มี 1 เหตุการณ์ที่การแสดงภาพที่เลือกได้ควรเริ่มทำงาน ซึ่งก็คือเหตุการณ์ที่เลือก อย่างไรก็ตาม ลักษณะการทำงานและความหมายของเหตุการณ์นี้จะได้รับการกำหนดด้วยการแสดงข้อมูลผ่านภาพแต่ละรายการ
หากการแสดงข้อมูลผ่านภาพไม่พร้อมโต้ตอบทันทีหลังจากที่เมธอด draw
ส่งตัวควบคุมกลับมาให้ผู้ใช้ การแสดงภาพควรเริ่มทำงาน: เหตุการณ์ Ready
ลักษณะการทำงานและความหมายของเหตุการณ์นี้จะกําหนดอยู่ในส่วนเหตุการณ์ที่พร้อมใช้งาน
โปรดทราบว่าเหตุการณ์ Visualization API นั้นแยกต่างหากและแตกต่างจากเหตุการณ์ DOM มาตรฐาน
เนื้อหา
การสั่งให้เหตุการณ์เริ่มทำงาน
หากต้องการให้เหตุการณ์เริ่มทำงานจากการแสดงภาพ ให้เรียกฟังก์ชัน google.visualization.events.trigger()
ฟังก์ชันควรมีพารามิเตอร์ต่อไปนี้
- การแสดงภาพแหล่งที่มา (โดยทั่วไปคือค่า
this
) - ชื่อเหตุการณ์ (สตริง)
- รายละเอียดเหตุการณ์ (ออบเจ็กต์) การแมปที่ไม่บังคับ (ชื่อ/ค่า) ของรายละเอียดเหตุการณ์ที่เฉพาะเจาะจง
ตัวอย่างต่อไปนี้แสดงวิธีที่การแสดงภาพส่งเหตุการณ์ที่เลือก
MyVisualization.prototype.onclick = function(rowIndex) { this.highlightRow(this.selectedRow, false); // Clear previous selection this.highlightRow(rowIndex, true); // Highlight new selection // Save the selected row index in case getSelection is called. this.selectedRow = rowIndex; // Fire a select event. google.visualization.events.trigger(this, 'select', {}); };
หน้าโฮสติ้งสามารถลงทะเบียนเพื่อรับกิจกรรมโดยโทรไปที่ google.visualization.events.addListener()
หรือ google.visualization.events.addOneTimeListener()
อย่าลืมบันทึกเหตุการณ์ที่คุณเริ่มทำงานอย่างละเอียด
เหตุการณ์ Select
เหตุการณ์ "select" เป็นเหตุการณ์มาตรฐานที่เกิดจากการแสดงข้อมูลผ่านภาพหลายรายการ เมื่อมีการคลิกเมาส์ของผู้ใช้ หากเลือกที่จะเริ่มการทำงานของเหตุการณ์เพื่อตอบสนองการคลิกเมาส์ คุณควรใช้เหตุการณ์ "select" ด้วยวิธีมาตรฐานที่อธิบายไว้ที่นี่
- เริ่มการทำงานของเหตุการณ์ที่มีชื่อ "select" เมื่อผู้ใช้เลือกข้อมูลบางอย่างภายในการแสดงภาพ เหตุการณ์จะไม่ส่งอาร์กิวเมนต์ใดๆ ไปยังฟังก์ชันการฟัง
- แสดงเมธอด
getSelection()
ตามที่อธิบายไว้ในส่วนเอกสารที่ลิงก์ เมธอดนี้ควรแสดงผลดัชนีองค์ประกอบ data ที่ผู้ใช้เลือก
- แสดงเมธอด
setSelection()
ตามที่อธิบายไว้ในส่วนการอ้างอิง นอกจากนี้ โปรดดูหน้าการจัดการเหตุการณ์เพื่อดูวิธีจัดการเหตุการณ์
เหตุการณ์ความพร้อม
การแสดงข้อมูลผ่านภาพควรเริ่มการทำงานของเหตุการณ์ที่ "พร้อม" ซึ่งทำงานด้วยวิธีมาตรฐานเพื่อแจ้งให้นักพัฒนาซอฟต์แวร์ทราบเมื่อการแสดงข้อมูลผ่านภาพพร้อมที่จะประมวลผลที่เรียกว่า Method (อย่างไรก็ตาม ไม่มีข้อกำหนดที่แน่นอนว่าการแสดงภาพมีลักษณะเช่นนี้ โปรดดูเอกสารประกอบสำหรับการแสดงภาพ)
โดยทั่วไป การแสดงภาพที่แสดงเหตุการณ์ที่ "พร้อม" ได้รับการออกแบบโดยมีข้อกำหนดต่อไปนี้
- เหตุการณ์ที่พร้อมใช้จะไม่ส่งผ่านพร็อพเพอร์ตี้ใดๆ ไปยังเครื่องจัดการ (เครื่องจัดการฟังก์ชันไม่ควรคาดหวังให้มีการส่งพารามิเตอร์ใดๆ ไปยังเครื่องจัดการ)
- การแสดงภาพควร เริ่มการทำงานของเหตุการณ์ Ready หลังจากที่การแสดงภาพพร้อมสำหรับการโต้ตอบ
หากภาพวาดการแสดงภาพเป็นแบบไม่พร้อมกัน สิ่งสำคัญคือต้องให้เหตุการณ์เริ่มทำงานเมื่อมีการเรียกใช้วิธีการโต้ตอบจริง ไม่ใช่เฉพาะเมื่อเมธอด
draw
สิ้นสุดเท่านั้น - คุณควรเพิ่ม Listener เหตุการณ์นี้ก่อนที่จะเรียกใช้เมธอด
draw
เพราะมิฉะนั้น เหตุการณ์อาจเริ่มทำงานก่อนที่จะตั้งค่า Listener และคุณจะตรวจจับไม่ได้ - การเรียกวิธีการโต้ตอบก่อนที่เหตุการณ์พร้อมจะเริ่มทำงาน คุณมีความเสี่ยงที่วิธีการเหล่านี้จะทำงานอย่างไม่ถูกต้อง
กฎคือการแสดงภาพที่ไม่เริ่มการทำงานของเหตุการณ์ "พร้อม" จะพร้อมสำหรับการโต้ตอบทันทีหลังจากที่เมธอด draw
สิ้นสุดลงและแสดงผลการควบคุมให้แก่ผู้ใช้