Saltar al contenido principal
Inicio - Soporte de OCLC

Guion a nivel de colección

La traducción de este sitio web se genera mediante traducción automática. La calidad y precisión de la traducción automática pueden variar significativamente de un texto a otro.

 

El sitio de CONTENTdm basado en React ya no admite archivos JavaScript personalizados a nivel de colección. Esto se debe a la necesidad de que todos los scripts personalizados del lado del cliente se integren con el ciclo de vida de eventos de la aplicación y se ejecuten (o no) según el contexto de la página y la disponibilidad del DOM.

Si desea crear funciones JavaScript personalizadas que surtan efecto solo en colecciones específicas, puede hacerlo agregando una cláusula if a su código JavaScript personalizado. Cualquier JavaScript personalizado que manipule o lea el DOM ya deberá haber utilizado document.addEventListener para asegurarse de que se ejecute en el momento adecuado, p. ej.:

(function() { document.addEventListener('cdm-item-page:ready', function(e){ var message = '¡Hola, mundo!'; console.log (message); }); })();

El script anterior utiliza IIIFE y el evento ready para registrar un mensaje en la consola cada vez que el DOM de una página de destino de colección se haya renderizado completamente. Si desea que esta misma función se ejecute solo para una colección específica, debe agregar una cláusula if como esta:

(function() { document.addEventListener('cdm-item-page:ready', function(e){ let globalScope = false; let collectionScope = [ 'oclcsample', 'otheralias1', 'otheralias2' ]; if (globalScope || collectionScope.includes(e.detail.collectionId)) { var message = '¡Hola, mundo!'; console.log (message); } }); })();

El valor collectionId se puede inspeccionar para cualquier clase de evento que tenga un contexto de colección específico. Estas son todas las clases de página para las páginas de colección y de documento. Consulte la Lista de eventos del ciclo de vida de JavaScript para obtener más información sobre las clases de páginas de eventos.

También tenga en cuenta que, al igual que con cualquier personalización de JavaScript en CONTENTdm, es posible que deba agregar la cláusula if tanto al evento de página ready como al evento de página update, según lo que intente hacer su código. Dado que las aplicaciones de React actualizarán partes del DOM de manera dinámica, es posible que deba ejecutar su código JavaScript en el evento de página actualización para asegurarse de que está actuando sobre la versión actual del DOM. Puede ver un script de ejemplo que se ejecuta solo en una colección específica en los eventos de página listo, actualización y salida haciendo clic en el siguiente enlace: