animasi


Naboo ialah penyelesaian animasi bahagian hadapan yang merangkumi mekanisme penjadualan animasi dan set alat animasi, menyokong animasi dan panggilan balik bersiri dan selari, serta menyokong pemalam tersuai

1 dan boleh dibuat dalam kelas kejadian berdasarkan senario Pilih untuk menggunakan

var util = require('util');

// 类对象
var Naboo = util.naboo;

// 实例对象
var naboo = new util.naboo();
naboo.animate(...);

2 Gunakan

1) naboo.animate(dom, prop, opt)

    Penerangan: pemalam animasi, pemalam yang digunakan khas untuk operasi animasi
  • senarai parameter dianimasikan

  • prop

  • Objek
adalah diperlukan Animasi π objek pasangan nilai kunci atribut css optObjectNoObjek parameter animasi pilihanTidakNoTidakFunctionNocontoh kod
  naboo.animate(dom, {
      'transform': 'translateX(200px)'
  }, {
      duration: 2000,
      ease: 'ease',
      delay: 1000,
      mode: 'transition',
      cb: function() {
          console.log(1);
      }
  }).start();
2) naboo.start(fn)JenisDiperlukan
Tempoh animasi, nilai lalai 400, Unit msopt.easestring
Nama fungsi pelonggaran animasi, nilai lalai ialah ease, nilai pilihan termasuk ease, linear, ease-in, ease- keluar, mudah-masuk-keluar opt.delaynombor
Masa untuk pelaksanaan kelewatan animasi, nilai lalai 0, unit msFunctionopt.cb
Panggil balik fungsi selepas animasi selesai opt.modestring
Mod animasi, peralihan nilai lalai, nilai pilihan termasuk peralihan, bingkai utama (belum disokong lagi), js (belum disokong lagi)
Penerangan: Fungsi arahan untuk mula melaksanakan animasiSenarai parameter:
    Penerangan

    fn
  • Fungsi

  • Tiada
  • Fungsi panggilan balik selepas animasi selesai

  • Contoh penggunaan:

      naboo.animate(dom, {      'transform': 'translateX(200px)'
      }, {
          duration: 2000
      }).start();

3) naboo.next()

  • Penerangan: Fungsi arahan yang membolehkan animasi memasuki langkah seterusnya Anda perlu memanggil next() sebelum memanggil selesai atau mendaftar (daftar pemalam) kaedah. Animasi seterusnya;

  • Senarai parameter: Tiada

  • Contoh penggunaan:

      naboo.animate(dom, {      'transform': 'translateX(200px)'
      }, {
          duration: 2000
      }).done(function(next) {
          console.log(1);
          next();
      });

4) naboo.cancel()

    Arahan untuk membatalkan . Selepas memanggil fungsi ini, ia tidak dilaksanakan pada masa ini. senarai:
  • Parameter
  • Jenis

    Diperlukan
Penerangan

  • nama
  • nama acara

mencetuskan acaraContoh penggunaan: 6) naboo.off( nama, fn)Parameter acara :Parameter
fnFungsi ialah kaedahnya untuk
  var instance;
  btnStart.onclick = function () {
      instance = naboo.animate(dom, {
          'transform': 'translateX(200px)'
      }, {
          duration: 2000,
          cb: function() {
              console.log(1);
          }
      }).start();
  }
  btnCancel.onclick = function () {
      instance.cancel();
  }
Jenis
  • Diperlukan

    Penerangan

  • nama

    rentetan
  • Tidak

    akan dibatalkan, jika semuanya kosong, nama itu akan dibatalkan
fnFungsi Tidak Kaedah untuk mencetuskan acara, jika kosong, ia akan membatalkan semua acara di bawah nama ini Contoh penggunaan:
  var handle = function(event) {
      console.log(event);
  }
  btn.onclick = function () {
      naboo.on("customer", handle);
  }
Penerangan: Peristiwa pencetusSenarai parameter:Diperlukan
7) naboo.trigger(nama, data)
ParameterJenis
Penerangan

  • ialah
  • nama acara Jika ya kosong, semua acara akan dikeluarkan. p(list)

Penerangan: Pemalam selari Naboo, yang melaluinya berbilang animasi boleh dilaksanakan serentak dan boleh dipanggil melalui kelas atau objek contohdescription ialah senarai objek naboo yang perlu disejajarkan
Senarai parameter:
typerequired
listarray
    • Contoh penggunaan:

        var handle = function(event) {
            console.log(event);
        }
        btn.onclick = function () {
            console.log('解除事件');
            naboo.off("customer", handle);
        }

    8) naboo.done(fn)

    • Penerangan: Naboo's done plug-in boleh digunakan untuk memanggil semula selepas sebarang pemalam animasi, dan boleh dipanggil melalui kelas atau objek contoh;

    • Nota: Anda perlu memanggil next() dalam kaedah ini untuk memasuki langkah animasi seterusnya, kerana memandangkan mungkin terdapat beberapa gelagat tak segerak, seperti permintaan ajax

    • Senarai parameter :

    fungsi panggilan balik
    ParameterJenisDiperlukanPenerangan
    fn
    • Contoh penggunaan:
    •   btn.onclick = function () {
            naboo.trigger("customer", {
                a: 1
            });
        }

    P.S.: Kod sampel dikenal pasti dalam Selepas animasi dom1 dilaksanakan, animasi dom2 dilaksanakan

    3 Kaedah statik kelas: Naboo.register(nama, fn)
    • Penerangan: Pendaftaran pemalam. fungsi, jika animasi tidak dapat memenuhi keperluan, atau juruweb memerlukan Encapsulate plug-in anda sendiri untuk memudahkan panggilan, anda boleh menggunakan kaedah ini untuk mendaftar kaedah
    • Nota: Apabila melaksanakan register fn, anda perlu memanggil next() untuk melaksanakan animasi seterusnya;
    • fungsi

      ialah fungsi
    plam masuk , digunakan untuk mentakrifkan logik pelaksanaan pemalamContoh Penggunaan :
      naboo.p(
          naboo.animate(dom1, {
              'transform': 'translateX(200px)'
          }, {
              duration: 2000,
              cb: function() {
                  console.log(1);
              }
          }),
    
          naboo.animate(dom2, {
              'transform': 'translateX(200px)'
          }, {
              duration: 3000,
              cb: function() {
                  console.log(2);
              }
          })
      ).start();