To add the toolbar command, use the $.sceditor.command.set
function:
$.sceditor.command.set("headers", { exec: function(caller) { // Store the editor instance so it can be used // in the click handler var editor = this, $content = $("<div />"); // Create the 1-6 header options for (var i=1; i<= 6; i++) { $( '<a class="sceditor-header-option" href="#">' + '<h' + i + '>Heading ' + i + '</h' + i + '>' + '</a>' ) .data('headersize', i) .click(function (e) { // When the option is clicked call the native contenteditable // formatblock to format this block to the header // // It's nearly always better to use the editors methods like // insert() over the browsers native execCommand as // execCommand has many browser incompatibilites. editor.execCommand("formatblock", "<h" + $(this).data('headersize') + ">"); editor.closeDropDown(true); e.preventDefault(); }) .appendTo($content); } editor.createDropDown(caller, "header-picker", $content.get(0)); }, tooltip: "Format Headers" });
Add the commands CSS:
.sceditor-button-headers div { background: url('/images/headers-button.png'); } .sceditor-header-option { display: block; cursor: pointer; font-size: 14px; text-decoration: none; color: #222; } .sceditor-header-option:hover { background: #eee; }
Then, if using the BBCode plugin, add the BBCode commands using the $.formats.bbcode.set
function:
$.sceditor.formats.bbcode .set("h1", { tags: { h1: null }, format: "[h1]{0}[/h1]", html: "<h1>{0}</h1>", isInline: false }) .set("h2", { tags: { h2: null }, format: "[h2]{0}[/h2]", html: "<h2>{0}</h2>", isInline: false }) .set("h3", { tags: { h3: null }, format: "[h3]{0}[/h3]", html: "<h3>{0}</h3>", isInline: false }) .set("h4", { tags: { h4: null }, format: "[h4]{0}[/h4]", html: "<h4>{0}</h4>", isInline: false }) .set("h5", { tags: { h5: null }, format: "[h5]{0}[/h5]", html: "<h5>{0}</h5>", isInline: false }) .set("h6", { tags: { h6: null }, format: "[h6]{0}[/h6]", html: "<h6>{0}</h6>", isInline: false });
Finally add the command to the toolbar of the editor:
$("#demo-cust-cmd").sceditor({ format: 'bbcode', toolbar: "headers|source", });
See the documentation for more details on the above functions and CSS.