Quiero reemplazar la división de envoltorio
No, actualmente no hay forma de importar un envoltorio, pero aceptaría encantado una residencia permanente para esto
Lee la respuesta completa abajo ↓Pregunta
Hola artf,
Quiero reemplazar la división de envoltorios, por ejemplo: Cuando creamos la plantilla del boletín, ya existe el wrapper div ahí. En la plantilla de importación, si existe el wrapper div en importar html, entonces hay que reemplazar el wrapper ya existente por uno nuevo.
¿Es eso posible? A continuación está mi código
var blockManager = editor. Jefe de bloque;
var tipo = 'plantilla';
bm.add(type, {
etiqueta: 'Prueba',
categoría: 'Mis plantillas',
Contenido: {
Tipo: Tipo,
contenido: '<div id="wrapper" style="cuadro-dimensionamiento: cuadro de borde; imagen de fondo: url(http://www.test.net/source/MzE=/badlands-dawn-20180314012931.jpg); repetición-fondo: repetir; posición-fondo: arriba izquierda; tamaño-fondo: cover; anexo-fondo: fijo;"><div class="div-box c5389 c6138" style="tamaño: cuadro de borde; margen: 0 auto; ancho máximo: 600px; relleno: 5px 5px 5px 5px 5px; ancho: 100%;"><id/id="id29o6" estilo="tamaño-caja: cuadro de borde;" ><div id="isee9e" style="cuadro-dimensionamiento: cuadro de borde; relleno: 0; margen: 0; vertical-alineado: arriba; pantalla: bloque en línea; ancho: 100%;">
</div></div><h1 class="encabezado" id="iti4ul" style="box-sizing: border-box;">Insertar título aquí</h1><p class="paragraph" id="ik4ktj" style="box-sizing: border-box;">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua</p><h1 class="heading" id="irpqvn" style="box-sizing: border-box;">Inserte título aquí</h1><p class="párrafo" id="ii5irl" style="box-sizing: border-box;" >Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua</p><a class="c5561" id="iqlfky" style="cuadro-tamaño: borde-recuadro; tamaño-fuente: 20px; relleno: 10px 25px; color de fondo: #673AB7; color: #fff; text-align: center; borde-radio: 4px; peso-fuente: 300; pantalla: inline-block; margin: 10px;">Texto del botón de enlace</a></div></div>'
}
});
var dc = editor. DomComponents;
var defaultType = dc.getType('default');
var defaultModel = defaultType.model;
editor. DomComponents.addType(type, {
view: defaultType.view.extend({
render: función () {
defaultType.view.prototype.render.apply(esto, argumentos);
Aquí aplicas toda tu lógica personalizada
var content = this.model.attributes.content;
var wrapperStyle = '';
si (contenido) {
var c = $(contenido),
wrapperId = c.attr('id');
if (wrapperId == 'wrapper') {
wrapperStyle = c.attr('style');
contenido = c[0].innerHTML;
}
}
var ws = wrapperStyle.split(';');
si (ws) {
var WC = Editor. DomComponents.getWrapper();
var wstyles = {};
para (var i = 0; i < ws.length; i++) {
var st = ws[i].split(': ');
st[0] = st[0].trim();
si (st[0] != 'indefinido' && st[0] != '') {
wstyles[st[0]] = st[1];
}
}
wc.set({
Estilo: Wstyles
});
}
this.model.attributes.content = content;
devuelvo esto;
},
}),
});
Después de arrastrar y soltar, no se puede editar @artf
Respuestas (2)
No, actualmente no hay forma de importar un envoltorio, pero aceptaría encantado una residencia permanente para esto
¿Algún avance en esto? Especificar el componente envolvente es muy útil cuando se trabaja con elementos personalizados que necesitan un contexto, como FormKit que requiere algunos datos 'proporcionados()'d...
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #1410
Posición de marcador de posición de Drag
@artf Cuando establecemos un margen desde arriba hasta el contenedor y queremos arrastrar algún elemento dentro de él, entonces La posición...
Issue #668
Cuando no esté disponible seleccionar un elemento, sugiere pasar el cursor y hacer clic en evento seleccionará el padre disponible.
Hola @artf, ¿puedo tener una mejora para el comando de selección? Cuando el cursor haga clic o pase el cursor sobre el elemento que no es s...
Issue #2207
[BUG]: No se puede arrastrar el componente si hay espacio arriba/izquierda con Modo Absoluto
Dado el siguiente ejemplo de código... ''' html <div style="altura: 100px;"> Un poco de espacio arriba o a la izquierda </div> <div id="gjs...
Issue #1526
[PREGUNTA] cómo hacer un comando a pantalla completa
Hola, lamentablemente no encuentro documentación y no consigo entenderla por código: Sé que hay un comando incorporado 'pantalla completa',...
Plugins de pago que cumplen con este problema
Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.
Cargando recomendaciones de plugins de pago...
Consulta los plugins de código abierto de GrapesJS en GitHub O haz una búsqueda rápida en nuestro catálogo gratuito.
Explora plugins gratuitos →Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.
Explora plugins premium →Tutoriales relacionados
Guías detalladas sobre el mismo tema.
Tutorial
Super Tooltip for GrapesJS — Version 0.1.5 Released 🎉
We’re excited to announce the v 0.1.5 update of Super Tooltip, our floating‑menu and tooltip plugin for GrapesJS
Tutorial
GrapesJS in 2026: The Complete Guide to the Open-Source Web Builder Framework
Master GrapesJS in 2026. Architecture, code examples, React integration, plugin development, Studio SDK, and how it compares to other projects
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.