Saltar al contenido

cuaderno de campo

anotaciones

Menú
  • casa
    • dinou del carrer nou
  • cocina
    • pan
    • repostería
    • verdura
  • huerto
    • instrucciones sobre el huerto
    • plano del número 29
    • huerto del año 2025
  • humanidades
    • fonoteca
    • galería
  • juego
    • colección de roms
    • steamos en steam deck
    • lista de juego
    • dosbox
  • linux
    • bash
    • sistema operativo
    • ssh
  • web
    • apache
    • css
    • html5
    • javascript
    • mysql
    • php
Menú

tinymce: algunas notas sin orden

Publicada el 16 de marzo de 201726 de febrero de 2021 por ernesto
  • callback tras iniciar el editor
  • creación de un nuevo botón de formato
  • acceso al editor o editores de tinymce
  • inserción de contenido en un editor
  • campos de un formulario en la barra de herramientas de tinymce

callback tras iniciar el editor

init_instance_callback: function (editor)
{
     console.log("Tinymce está en marcha.");
}

la función que se le pase a este parámetro debe incluir un argumento como editor que garantice su ejecución posterior a la puesta en marcha de tinymce. sin la resolución del argumento editor, no se ejecutan las órdenes de la función.

creación de un nuevo botón de formato

en primer lugar, en la configuración que se le pasa a tinymce con tinymce.init(), hay que declarar el nuevo formato:

formats:
{
     cite: { inline: "cite" }
}

después, en el apartado setup de la misma configuración, se crea el botón en cuestión:

setup: function (editor)
{
     editor.addButton
     (
          "cita",
          {
               icon: "book",
               text: false,
               title: "Cita (sólo títulos)",
               onclick: function()
               {
                    editor.execCommand("mceToggleFormat", false, "cite");
               }
          }
     );
}

el comando mceToggleFormat, clave deste asunto, se encarga de aplicar el formato cite al texto seleccionado al igual que hace con una negrita o cursiva cuando se le solicita.

hay más información sobre el resto de las opciones en Creating a custom toolbar button.

acceso al editor o editores de tinymce

for(var i = 0; i < tinymce.editors.length; i++)
{
     console.log("Id del editor: " + tinymce.editors[i].id);
}

mediante estotra función, se obtienen los identificadores de los editores que haya en marcha:

Id del editor: mce_0

inserción de contenido en un editor

function a(m)
{
     tinymce.get("mce_0").insertContent(m);
}
var m = "que no fuese recuerdo de la muerte";
a(m);

esta función introduce en el editor mce_0 el texto de la variable m justo allí donde se encuentre el cursor.

campos de un formulario en la barra de herramientas de tinymce

function a(m)
{
     var o, b, e;
     // "mceu_18-body" y "mceu_21" son
     // identificadores de capas de la toolbar
     o = document.getElementById("mceu_18-body");
     b = document.getElementById("mceu_21");
     e = document.createElement("div");
     e.setAttribute("class", "mce-container mce-flow-layout-item mce-btn-group");
     o.insertBefore(e, b);
     e.innerHTML = m;
     e.childNodes;
}

en este caso, el argumento m contiene una cadena con código HTML5:

<input id="buscador" type="text"/>
<select id="titulos">
     <option disabled="disabled" selected="selected">tí­tulos</option>
     <optgroup id="audio" label="audio">
          <option value="a1" title="audio 1">audio 1</option>
          <option value="a2" title="audio 2">audio 2</option>
     </optgroup>
     <optgroup id="video" label="video">
          <option value="v1" title="video 1">video 1</option>
          <option value="v2" title="video 2">video 2</option>
     </optgroup>
</select>

e.childNodes convierte los elementos HTML de la cadena en los nodos correspondientes del DOM.

Etiquetado como callback, input, select, tinymce, toolbar
  • rsync en FAT

    Puesto al día el 18 de julio de 2025. --size-only dado que el sistema de…

  • javascript: callback y asincronía

    es frecuente llamar una función al cabo de otra con el propósito de secuenciar (ordenar)…

  • constante en heredoc

    una constante no devuelve su valor dentro de la sintaxis heredoc: define("C", "constante"); echo <<<HTML…

RSS rutas fuera

  • Metal Forum 18 de noviembre de 2025 Brett Stevens
  • Karbach Brewing Company – Crawford Bock (2025) 18 de noviembre de 2025 Brett Stevens
  • 14 razones por las cuales el metal es la música suprema [artículo externo] 17 de noviembre de 2025 Belisario
  • Beats and yelling: Infernal Thorns 17 de noviembre de 2025 Hate Meditations
  • When We Went MAD (2025) 16 de noviembre de 2025 Brett Stevens
  • Hallucinated subgenres 16 de noviembre de 2025 Hate Meditations
  • Karbach Brewing Company – Love Street Blonde (2025) 15 de noviembre de 2025 Brett Stevens
  • Beats and yelling: Liminal Spirit 14 de noviembre de 2025 Hate Meditations
  • Beats and yelling: Draculum 12 de noviembre de 2025 Hate Meditations

Archivo

cuaderno de campo 2011-2025