Diferencia entre revisiones de «Referencia:Incrustación de Aplicaciones GeoGebra»

De GeoGebra Manual
Saltar a: navegación, buscar
m (link)
 
(No se muestran 7 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
 
{{DISPLAYTITLE:<small>Incrustación de Aplicaciones GeoGebra</small>}}
 
{{DISPLAYTITLE:<small>Incrustación de Aplicaciones GeoGebra</small>}}
 
{{Referencia}}
 
{{Referencia}}
{{revisar}}
 
 
{{Note|1=Para incorporar una hoja dinámica a una página web, se cuenta con la opción
 
{{Note|1=Para incorporar una hoja dinámica a una página web, se cuenta con la opción
[[Menú Archivo#Comparte|Archivo > Comparte...]] para copiar el código - ''embed code'' - a incrustar en el correspondiente destino.<br> El método a describir, de mayor flexibilidad, propicia una integración más profunda.}}
+
[[Comentarios:Menúes#Comparte|Archivo > Comparte...]] para copiar el código - ''embed code'' - a incrustar en el correspondiente destino.<br> El método a describir, de mayor flexibilidad, propicia una integración más profunda.}}
  
=Incrustar utilizando [[Referencia:JavaScript|JavaScript]]=
+
=Incrustar vía [[Referencia:JavaScript|JavaScript]]=
Esta página explica cómo incorporar una aplicación GeoGebra en una cierto sito Web. En [[Referencia:JavaScript|JavaScript API]] se detalla cómo interactuar con lo incrustado.  
+
Esta página explica cómo incorporar una aplicación GeoGebra en una cierto sito Web. En [[Referencia:JavaScript|JavaScript API]] y [[Referencia:API_de_Aplicaciones_GeoGebra|Aplicaciones API]] se detalla cómo interactuar con lo incrustado.  
 
==Ejemplos Diversos==
 
==Ejemplos Diversos==
 
Algunos ejemplos en línea ilustran cómo, en relación al código '''html''', cómo incorporar una aplicación GeoGebra en una página Web o una ventana de diálogo emergente:
 
Algunos ejemplos en línea ilustran cómo, en relación al código '''html''', cómo incorporar una aplicación GeoGebra en una página Web o una ventana de diálogo emergente:
Línea 12: Línea 11:
 
* [http://dev.geogebra.org/examples/html/example-geometry.html Incorporar la Aplicación de Geometría]
 
* [http://dev.geogebra.org/examples/html/example-geometry.html Incorporar la Aplicación de Geometría]
 
* [http://dev.geogebra.org/examples/html/example-popup-graphing.html Calculadora Gráfica en modalidad ''popup'']
 
* [http://dev.geogebra.org/examples/html/example-popup-graphing.html Calculadora Gráfica en modalidad ''popup'']
* [http://dev.geogebra.org/examples/html/example-popup-geometry.html Aplicación de Geometría modalità  en modalidad ''popup'']
+
* [http://dev.geogebra.org/examples/html/example-popup-geometry.html Aplicación de Geometría en modalidad ''popup'']
 
Algunos otros ejemplos aparecen en,
 
Algunos otros ejemplos aparecen en,
 
* [http://dev.geogebra.org/examples/html/example2.html Live demo]
 
* [http://dev.geogebra.org/examples/html/example2.html Live demo]
Línea 42: Línea 41:
 
</script></pre>
 
</script></pre>
  
A continuación se puede modificar el parámetro <code>appName</code> de <code>graphing</code> a <code>geometry</code> o <code>3d</code> para una u otra de las aplicaciones. Para una Actividad, se requiere. <code>"material_id":"RHYH3UQ8"</code> o <code>"filename":"myFile.ggb"</code>, cuando se procure una personalización ulterior de la aplicación se deben establecer los correspondientes [[Referencia:Parámetros_Applet|parámetros de la aplicación GeoGebra]].
+
A continuación se puede modificar el parámetro <code>appName</code> de <code>graphing</code> a <code>geometry</code> o <code>3d</code> para una u otra de las correspondientes aplicaciones. Para una actividad, puede usarse por ejemplo, <code>"material_id":"RHYH3UQ8"</code> o <code>"filename":"miarchivo.ggb"</code> y es posible una personalización ulterior de la aplicación con los diversos [[Referencia:Parámetros_Applet|parámetros pertinentes de la aplicación GeoGebra]].
  
 
=Tutorial=
 
=Tutorial=
Línea 60: Línea 59:
 
El código para incorporar la aplicación es prácticamente igual a la precedente, con una diferencia: la etiqueta para incluir deployggb.js debe modificarse a  
 
El código para incorporar la aplicación es prácticamente igual a la precedente, con una diferencia: la etiqueta para incluir deployggb.js debe modificarse a  
 
<pre>    <script src="GeoGebra/deployggb.js"></script></pre>
 
<pre>    <script src="GeoGebra/deployggb.js"></script></pre>
 +
Antes de la "llamada" al inject():
 +
<pre>    ggbApp.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');</pre>
 +
 
y es preciso incluir las siguientes dos líneas de código bajo la definición del ''applet'':
 
y es preciso incluir las siguientes dos líneas de código bajo la definición del ''applet'':
 
<pre>    applet1.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');
 
<pre>    applet1.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');
 
     applet2.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');</pre>
 
     applet2.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');</pre>
 
Antes de la "llamada" de inject():
 
<pre>    ggbApp.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');</pre>
 
  
 
Como alternativa, si fuese necesario especificar una determinada versión, es posible usar la [https://es.wikipedia.org/wiki/Red_de_distribuci%C3%B3n_de_contenidos CDN (red de distribución de contenidos)] de este modo:
 
Como alternativa, si fuese necesario especificar una determinada versión, es posible usar la [https://es.wikipedia.org/wiki/Red_de_distribuci%C3%B3n_de_contenidos CDN (red de distribución de contenidos)] de este modo:
 
<pre>    ggbApp.setHTML5Codebase("https://www.geogebra.org/apps/5.0.498.0/web3d");</pre>
 
<pre>    ggbApp.setHTML5Codebase("https://www.geogebra.org/apps/5.0.498.0/web3d");</pre>
  
=Velocizzare i tempi di avvio con un service worker=
+
=<small>Agilizando la ejecución vía ''service worker''</small>=
È possibile velocizzare l'avvio delle librerie GeoGebra utilizzando un processo di lavoro dei servizi (service worker).
+
Apelando a un ''service worker'' puede acelerarse la carga de la librería GeoGebra.
Per utilizzare un service worker è necessario impostare una versione speifica di GeoGebra, utilizzando <code>setHTML5Codebase()</code> - tecnicamente sarebbe possibile utilizzare un service worker che scarica sempre l'ultima versione, ma ciò richiederebbe l'aggiornamento del service worker sul proprio sito Web ad ogni aggiornamento di GeoGebra.
+
A tal fin, es preciso especificar la versión de GeoGebra en uso vía:
 +
<code>setHTML5Codebase()</code> - técnicamente sería posible usar un ''service worker'' qye siempre descargue la última versión, pero es requeriría la actualización del ''service worker'' en el propio sito Web con cada actualización de GeoGebra.
  
Per installare il service worker, includere prima di tutto il file ''sworker-locked.js'' nel proprio dominio (ad es. ''www.example.com/path/sworker-locked.js'').  
+
Para instalar el ''service worker'', en principio hay que incluir el archivo ''sworker-locked.js'' en el propio dominio (por ejemplo. ''www.example.com/path/sworker-locked.js'').  
Il file del service worker è disponibile nella cartella ''GeoGebra/HTML5/5.0/web3d/'' del pacchetto ''GeoGebra Math Apps''.
+
El archivo del service worker estará disponible en la carpeta ''GeoGebra/HTML5/5.0/web3d/'' del paquete ''GeoGebra Math Apps''.
  
Includere quindi il seguente snippet nella pagina in cui viene caricato GeoGebra, modificando il percorso relativo al service worker. È inoltre possibile impostare la variabile appletLocation in modo da abilitare il worker solo in una cartella specifica (o lasciarla come '/' in modo da utilizzarla in tutte le pagine del vostro dominio):
+
A continuación, se debe incluir el siguiente fragmento en la página en que se carga GeoGebra., modificando el paso relativo al ''service worker''. Puede además fijarse la variable de la ubicación del applet (appletLocation) para establecer el ''worker'' exclusivamente en una carpeta (o dejarlo como '/' para darle alcance a todas las páginas del propio dominio):
  
 
     var serviceWorkerPath = '/sworker-locked.js'
 
     var serviceWorkerPath = '/sworker-locked.js'
Línea 104: Línea 104:
 
     }
 
     }
  
Con questa installazione, quando un utente apre la pagina in cui è abilitato un service worker, vengono scaricati gli script dell'applicazione, che vanno nella cache del service worker. In questo modo, la prossima volta che lo stesso utente visiterà la pagina, gli script saranno caricati dalla cache invece di essere nuovamente scaricati dai server.
+
Con esta instalación, cuando se abra la página en que está habilitado un ''service worker'', el guión o script de la aplicaron, se descarga en el ''cache'' del ''service worker''. De este modo, en la próxima ocasión en que se reitere la visita a la página, los scripts se cargarán desde el cache en lugar de tener que volver a recuperarlo desde los correspondientes servidores.
 
 
When used with the id parameter, the applet will be created using the dimensions (width and height) and the applet parameters defined in the material settings on GeoGebra Materials Platform.  Optionally you can override these settings by passing them in the parameters. See [[Reference:Applet_Parameters]] for the list of all parameters.
 
 
 
 
 
El 'snippet' que está aquí arriba, incrusta un applet dado por su ID y una dada URL y lo incorpora dentro de elementos con ID 'applet_container1' y 'applet_container2' respectivamente (el elemento ID se pasa al método 'inject') . Para uso fuera de línea, es necesario especificar el archivo utilizando un base64 encoded string (press Ctrl+Shift+B to export ggbBase64 string to clipboard).
 
 
 
 
 
In the example the parameter <code>"showToolbar":true</code> overrides the material setting from the file.
 
  
 
=Ejemplos=
 
=Ejemplos=

Revisión actual del 07:52 27 mar 2020


Nota: Para incorporar una hoja dinámica a una página web, se cuenta con la opción Archivo > Comparte... para copiar el código - embed code - a incrustar en el correspondiente destino.
El método a describir, de mayor flexibilidad, propicia una integración más profunda.

Incrustar vía JavaScript

Esta página explica cómo incorporar una aplicación GeoGebra en una cierto sito Web. En JavaScript API y Aplicaciones API se detalla cómo interactuar con lo incrustado.

Ejemplos Diversos

Algunos ejemplos en línea ilustran cómo, en relación al código html, cómo incorporar una aplicación GeoGebra en una página Web o una ventana de diálogo emergente:

Algunos otros ejemplos aparecen en,

Para informarse sobre modos de operar con códigos, puede consultarse este tutorial

Método Rápido

Para incorporar una aplicación (app) GeoGebra en un página Web es preciso corroborar que el archivo HTML cuenta con lo que se indica en cada uno de los siguientes pasos:

1 Para que el Unicode vaya a funcionar, sea en un navegadores o en un dispositivos móviles, a partir de la sección <head> debe anotarse:

<meta name=viewport content="width=device-width,initial-scale=1">
<meta charset="utf-8"/>

2 La librería javascript deployggb.js debe estar incluida en la siguiente etiqueta:

<script src="https://www.geogebra.org/apps/deployggb.js"></script>

3 En la página Web se debe incluir un elemento en que se incorpore el 'applet

<div id="ggb-element"></div> 

4 Configurar e incorporar el applet

<script>  
       var ggbApp = new GGBApplet({"appName": "graphing", "width": 800, "height": 600, "showToolBar": true, "showAlgebraInput": true, "showMenuBar": true }, true);
         window.addEventListener("load", function() {  
           ggbApp.inject('ggb-element');
      });
</script>

A continuación se puede modificar el parámetro appName de graphing a geometry o 3d para una u otra de las correspondientes aplicaciones. Para una actividad, puede usarse por ejemplo, "material_id":"RHYH3UQ8" o "filename":"miarchivo.ggb" y es posible una personalización ulterior de la aplicación con los diversos parámetros pertinentes de la aplicación GeoGebra.

Tutorial

El siguiente tutorial, en italiano, detalla las distintas formas de incorporar un applet:

API de la aplicación (app) GeoGebra

Los siguientes ejemplos ilustran cómo interactuar con las aplicaciones incrustadas desde los parámetros de la aplicación GeoGebra, (API de la app de GeoGebra):

Soluciones offline y auto alojadas (self-hosted)

Es recomendable el empleo de la aplicación (app) GeoGebra de la red global del servidor www.geogebra.org -CDN (cdn.geogebra.org)- como se ilustra en la sección previa. De preferirse alojar y actualizar personalmente la app de GeoGebra para, por ejemplo, trabajar fuera de línea, es posible recurrir al conjunto de matemática: Descarga del conjunto Math Apps Bundle

El código para incorporar la aplicación es prácticamente igual a la precedente, con una diferencia: la etiqueta para incluir deployggb.js debe modificarse a

    <script src="GeoGebra/deployggb.js"></script>

Antes de la "llamada" al inject():

    ggbApp.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');

y es preciso incluir las siguientes dos líneas de código bajo la definición del applet:

    applet1.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');
    applet2.setHTML5Codebase('GeoGebra/HTML5/5.0/web3d/');

Como alternativa, si fuese necesario especificar una determinada versión, es posible usar la CDN (red de distribución de contenidos) de este modo:

    ggbApp.setHTML5Codebase("https://www.geogebra.org/apps/5.0.498.0/web3d");

Agilizando la ejecución vía service worker

Apelando a un service worker puede acelerarse la carga de la librería GeoGebra. A tal fin, es preciso especificar la versión de GeoGebra en uso vía: setHTML5Codebase() - técnicamente sería posible usar un service worker qye siempre descargue la última versión, pero es requeriría la actualización del service worker en el propio sito Web con cada actualización de GeoGebra.

Para instalar el service worker, en principio hay que incluir el archivo sworker-locked.js en el propio dominio (por ejemplo. www.example.com/path/sworker-locked.js). El archivo del service worker estará disponible en la carpeta GeoGebra/HTML5/5.0/web3d/ del paquete GeoGebra Math Apps.

A continuación, se debe incluir el siguiente fragmento en la página en que se carga GeoGebra., modificando el paso relativo al service worker. Puede además fijarse la variable de la ubicación del applet (appletLocation) para establecer el worker exclusivamente en una carpeta (o dejarlo como '/' para darle alcance a todas las páginas del propio dominio):

   var serviceWorkerPath = '/sworker-locked.js'
   var appletLocation = '/'
   
   function isServiceWorkerSupported() {
       return 'serviceWorker' in navigator && location.protocol === "https:";
   }
   
   function installServiceWorker() {
       if (navigator.serviceWorker.controller) {
           console.log("Service worker is already controlling the page.");
       } else {
           navigator.serviceWorker.register(serviceWorkerPath, {
               scope: appletLocation
           });
       }
   }
   
   if (isServiceWorkerSupported()) {
       window.addEventListener('load', function() {
           installServiceWorker()
       });
   } else {
       console.log("Service workers are not supported.");
   }

Con esta instalación, cuando se abra la página en que está habilitado un service worker, el guión o script de la aplicaron, se descarga en el cache del service worker. De este modo, en la próxima ocasión en que se reitere la visita a la página, los scripts se cargarán desde el cache en lugar de tener que volver a recuperarlo desde los correspondientes servidores.

Ejemplos

© 2024 International GeoGebra Institute