JS-evenementen
JS-gebeurtenissen worden geactiveerd elke keer dat er een verandering optreedt. Het kan worden geactiveerd door een gebruikersinteractie of weerspiegelt een programmatische verandering. Gebeurtenissen worden in een bepaalde volgorde uitgezonden, zoals beschreven in deze documentatie.
Gebeurtenissen kunnen rechtstreeks in uw rasterinstellingen of in uw eigen JS-script worden opgevangen.
Alle gebeurtenisvoorbeelden die in deze documentatie worden gepresenteerd, kunnen direct worden toegepast in uw rasterinstellingen onder het tabblad Aanpassing in het JS-veld en worden alleen voor dit raster geactiveerd. In dit geval de variabele wpgb
vertegenwoordigt de hoofdinstantie van de plug-in die alle subinstanties van het huidige raster bevat.
[pastacode lang=”javascript” manual=”console.dir(%20wpgb%20)%3B%20%2F%2F%20Holds%20all%20instances.%0A%0A%0A%2F%2F%20Where%20’instanceName’%20can%20be%3A%20facets%2C%20grid%2C%20carousel%2C%20lightbox.%0A%2F%2F%20Where%20’eventName’%20is%20the%20event%20name%20attached%20to%20an%20instance%0A.wpgb.instanceName.on(%20’eventName’%2C%20function(%20args%20)%20%7B%20%0A%09%0A%09console.log(%20’eventName’%2C%20args%20)%3B%0A%0A%7D%20)%3B%0A” message=”” highlight=”” provider=”manual”/]
Om uw eigen .js-bestand te gebruiken om gebeurtenissen van de plug-in te beluisteren, moet u eerst uw script registreren bij Gridbuilder ᵂᴾ dankzij dit PHP-filter:
[pastacode lang=”php” manual=”function%20prefix_register_script(%20%24scripts%20)%20%7B%0A%09%0A%09%24scripts%5B%5D%20%3D%20%5B%0A%09%09’handle’%20%3D%3E%20’my-script’%2C%0A%09%09’source’%20%3D%3E%20’my-url%2Fscript.js’%2C%0A%09%09’version’%20%3D%3E%20’1.0.0’%2C%20%0A%09%5D%3B%20%0A%09%0A%09return%20%24scripts%3B%0A%0A%7D%0A%0A%09%09%0Aadd_filter(%20’wp_grid_builder%2Ffrontend%2Fregister_scripts’%2C%20’prefix_register_script’%20)%3B” message=”” highlight=”” provider=”manual”/]
Nu we ons eigen script hebben geregistreerd, kunnen we gebeurtenissen beluisteren via de plug-in.
Omdat een pagina meerdere rasters en facetten kan bevatten (gekoppeld aan elk raster), moeten we luisteren naar elke rasterinitialisatie dankzij de globale eventmanager van de plug-in die is opgeslagen in het globale vensterobject WP_Grid_Builder
[pastacode lang=”javascript” manual=”%2F%2F%20We%20listen%20every%20time%20a%20grid%2Ftemplate%20is%20initialized.%20%0Awindow.WP_Grid_Builder%20%26%26%20WP_Grid_Builder.on(%20’init’%2C%20function(%20wpgb%20)%20%7B%20%0A%09%0A%09console.dir(%20wpgb%20)%3B%20%2F%2F%20Holds%20all%20instances.%20%0A%09%0A%09%0A%09%2F%2F%20Where%20’instanceName’%20can%20be%3A%20facets%2C%20grid%2C%20carousel%2C%20lightbox.%20%0A%09%2F%2F%20Where%20’eventName’%20is%20the%20event%20name%20attached%20to%20an%20instance.%20%0A%09wpgb.instanceName.on(%20’eventName’%2C%20function(%20args%20)%20%7B%0A%09%09console.log(%20’eventName’%2C%20args%20)%3B%0A%09%7D%20)%3B%0A%0A%7D%20)%3B” message=”” highlight=”” provider=”manual”/]