Peristiwa Pengaktifan

Visualisasi Anda dapat mengaktifkan peristiwa yang dapat didaftarkan oleh halaman host. Peristiwa dapat diaktifkan oleh tindakan pengguna: misalnya, pengguna mengklik diagram, atau dapat bersifat internal: misalnya, mengaktifkan peristiwa setiap 10 detik. Anda dapat mendaftarkan metode JavaScript untuk dipanggil setiap kali peristiwa tertentu diaktifkan, mungkin dengan data khusus untuk peristiwa tersebut.

Setiap visualisasi menentukan peristiwanya sendiri, dan dokumentasi untuk visualisasi tersebut harus menjelaskan kapan setiap peristiwa diaktifkan, artinya, dan informasi yang dikirim ke pengendali peristiwa Anda (misalnya, lihat visualisasi diagram). Halaman ini menjelaskan bagaimana kreator visualisasi dapat mengaktifkan peristiwa. Untuk mempelajari cara klien mendaftar untuk menerima peristiwa, lihat halaman Menangani Peristiwa.

Ada satu peristiwa yang harus diaktifkan oleh visualisasi yang dapat dipilih: peristiwa pilihan. Namun, perilaku dan makna peristiwa ini ditentukan oleh setiap visualisasi.

Jika visualisasi belum siap untuk interaksi segera setelah metode draw menampilkan kontrol kepada pengguna, visualisasi harus diaktifkan: peristiwa siap. Perilaku dan arti tepat dari peristiwa ini ditentukan di bagian Peristiwa Siap.

Penting untuk diperhatikan bahwa peristiwa Visualization API terpisah dan berbeda dari peristiwa DOM standar.

Daftar Isi

Mengaktifkan Peristiwa

Untuk mengaktifkan peristiwa dari visualisasi, panggil fungsi google.visualization.events.trigger(). Fungsi ini mengharapkan parameter berikut:

  1. Visualisasi sumber (biasanya ini adalah nilai this).
  2. Nama peristiwa (string).
  3. Detail peristiwa (Objek). Peta opsional (nama/nilai) dari detail peristiwa tertentu.

Contoh berikut menunjukkan cara visualisasi menampilkan peristiwa tertentu:

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', {});
};

Halaman hosting dapat mendaftar untuk menerima peristiwa Anda dengan memanggil google.visualization.events.addListener() atau google.visualization.events.addOneTimeListener(). Pastikan untuk mendokumentasikan setiap peristiwa yang Anda aktifkan secara menyeluruh.

Peristiwa Select

Peristiwa "select" adalah peristiwa standar yang ditampilkan oleh banyak visualisasi sebagai respons terhadap klik mouse pengguna. Jika memilih untuk mengaktifkan peristiwa sebagai respons terhadap klik mouse, Anda harus menerapkan peristiwa "select" dengan cara standar yang dijelaskan di sini:

  1. Aktifkan peristiwa dengan nama 'select' saat pengguna memilih beberapa data dalam visualisasi. Peristiwa ini tidak mengirimkan argumen apa pun ke fungsi pemrosesan.
  2. Ekspos metode getSelection() seperti yang dijelaskan di bagian dokumen tertaut. Metode ini akan menampilkan indeks elemen data yang dipilih pengguna.
  3. Tampilkan metode setSelection() seperti yang dijelaskan di bagian referensi. Lihat juga halaman menangani peristiwa untuk mempelajari cara menangani peristiwa.

Peristiwa Siap

Setiap visualisasi harus mengaktifkan peristiwa "siap" yang berfungsi dengan cara standar untuk memberi tahu developer saat visualisasi siap memproses metode yang disebut. (Namun, tidak ada persyaratan mutlak bahwa visualisasi berperilaku seperti ini; periksa dokumentasi untuk visualisasi Anda).

Secara umum, visualisasi yang mengekspos peristiwa "ready" didesain dengan spesifikasi berikut:

  • Peristiwa siap tidak meneruskan properti apa pun ke pengendali (pengendali fungsi Anda tidak boleh meneruskan parameter apa pun).
  • Visualisasi harus mengaktifkan peristiwa siap setelah visualisasi siap untuk interaksi. Jika gambar visualisasi bersifat asinkron, peristiwa harus dipicu saat metode interaksi benar-benar dapat dipanggil, dan bukan hanya saat metode draw berakhir.
  • Menambahkan pemroses ke peristiwa ini harus dilakukan sebelum memanggil metode draw, karena peristiwa tersebut mungkin akan diaktifkan sebelum pemroses disiapkan dan Anda tidak akan menangkapnya.
  • Dengan memanggil metode interaksi sebelum peristiwa siap diaktifkan, Anda berisiko bahwa metode ini tidak akan berfungsi dengan benar.

Konvensinya adalah visualisasi yang tidak mengaktifkan peristiwa "siap" siap berinteraksi segera setelah metode draw berakhir dan menampilkan kontrol kepada pengguna.

Info Selengkapnya