📄 toolbaritems.cs
字号:
changetype++;
if (changetype > 2) changetype = 0;
}
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with Delete JavaScript functions builtin
/// </summary>
public static ToolbarButton Delete {
get {
ToolbarButton button = new ToolbarButton("清空","delete","FTB_Delete");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_Delete(editor,htmlmode) {
if (confirm('确实要删除编辑器中所有的文字和 HTML 代码吗?')) {
editor.document.body.innerHTML = '';
editor.document.body.innerText = '';
}
editor.focus();
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with CreateLink JavaScript functions builtin
/// </summary>
public static ToolbarButton CreateLink {
get {
ToolbarButton button = new ToolbarButton("插入超链接","createlink","FTB_CreateLink");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_CreateLink(editor,htmlmode) {
if (htmlmode) return;
editor.focus();
editor.document.execCommand('createlink','1',null);
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with Unlink JavaScript functions builtin
/// </summary>
public static ToolbarButton Unlink {
get {
ToolbarButton button = new ToolbarButton("去除超链接","unlink","FTB_Unlink");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_Unlink(editor,htmlmode) {
if (htmlmode) return;
editor.focus();
editor.document.execCommand('unlink','1',null);
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with InsertImage JavaScript functions builtin
/// </summary>
public static ToolbarButton InsertImage {
get {
ToolbarButton button = new ToolbarButton("插入图片","insertimage","FTB_InsertImage");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertImage(editor,htmlmode) {
if (htmlmode) return;
editor.focus();
editor.document.execCommand('insertimage',1,'');
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with InsertImageFromGallery JavaScript functions builtin
/// </summary>
public static ToolbarButton InsertImageFromGallery {
get {
ToolbarButton button = new ToolbarButton("插入图片(来自图片库)","insertimagefromgallery","FTB_InsertImageFromGallery_CLIENTID");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertImageFromGallery_CLIENTID(editor,htmlmode) {
if (htmlmode) return;
editor.focus();
obj = FTB_GetRangeReference(editor);
if (obj.tagName == 'IMG') {
editor.document.execCommand('insertimage',1,'');
return;
}
var folder = 'IMAGEGALLERYPATH';
var galleryscript = FTB_HelperFilesPath + 'ftb.imagegallery.aspx?rif='+folder+'&cif='+folder;
if (FTB_HelperFilesParameters != '') galleryscript += '&' + FTB_HelperFilesParameters;
imgArr = showModalDialog(galleryscript,window,'dialogWidth:560px; dialogHeight:500px;help:0;status:0;resizeable:1;');
if (imgArr != null) {
imagestring = '<IMG SRC=""' + imgArr['filename'] + '"" HEIGHT=' + imgArr['height'] + ' WIDTH=' + imgArr['width'] + ' BORDER=0>';
sel = editor.document.selection.createRange();
sel.pasteHTML(imagestring);
} else {
//alert(""您没有选择图片。"");
}
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with InsertRule JavaScript functions builtin
/// </summary>
public static ToolbarButton InsertRule {
get {
ToolbarButton button = new ToolbarButton("插入水平线","insertrule","FTB_InsertRule");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertRule(editor,htmlmode) {
FTB_Format(editor,htmlmode,'inserthorizontalrule');
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with InsertDate JavaScript functions builtin
/// </summary>
public static ToolbarButton InsertDate {
get {
ToolbarButton button = new ToolbarButton("插入日期","insertdate","FTB_InsertDate");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertDate(editor,htmlmode) {
editor.focus();
var d = new Date();
sel = editor.document.selection.createRange();
sel.pasteHTML(d.toLocaleDateString());
}
</script>";
button.ButtonTitleMode = ButtonTitleMode.Selective;
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with InsertTime JavaScript functions builtin
/// </summary>
public static ToolbarButton InsertTime {
get {
ToolbarButton button = new ToolbarButton("插入时间","inserttime","FTB_InsertTime");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertTime(editor,htmlmode) {
editor.focus();
var d = new Date();
sel = editor.document.selection.createRange();
sel.pasteHTML(d.toLocaleTimeString());
}
</script>";
button.ButtonTitleMode = ButtonTitleMode.Selective;
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with WordCount JavaScript functions builtin
/// </summary>
public static ToolbarButton WordCount {
get {
ToolbarButton button = new ToolbarButton("字数统计","wordcount","FTB_WordCount");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_WordCount(editor,htmlmode) {
if (htmlmode) return;
var iSumWords = 0;
var rng = editor.document.body.createTextRange();
rng.collapse(true);
while(rng.move(""word"",1)) {
iSumWords++;
}
alert(""大约 "" + iSumWords + "" 字"");
}
</script>";
button.ButtonTitleMode = ButtonTitleMode.Selective;
return button;
}
}
/***************************************************
// The following Word Cleaner is a modified version
// of a cleaner I found in a free ASP.NET
// MSHTML editor, but I cannot find the source.
// Please email me for credits. Sorry!
***************************************************/
/// <summary>
/// Returns a ToolbarButton with WordClean JavaScript functions builtin
/// </summary>
public static ToolbarButton WordClean {
get {
ToolbarButton button = new ToolbarButton("清除 Word 格式","wordclean","FTB_WordClean");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_WordClean(editor,htmlmode) {
editor.focus();
// 0bject based cleaning
var body = editor.document.body;
for (var index = 0; index < body.all.length; index++) {
tag = body.all[index];
//if (tag.Attribute[""className""].indexOf(""mso"") > -1)
tag.removeAttribute(""className"","""",0);
tag.removeAttribute(""style"","""",0);
}
// Regex based cleaning
var html = editor.document.body.innerHTML;
html = html.replace(/<o:p> <\/o:p>/g, """");
html = html.replace(/o:/g, """");
html = html.replace(/<st1:.*?>/g, """");
// Final clean up of empty tags
html = html.replace(/<font>/g, """");
html = html.replace(/<span>/g, """");
editor.document.body.innerHTML = html;
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarButton with InsertTable JavaScript functions builtin
/// </summary>
public static ToolbarButton InsertTable {
get {
ToolbarButton button = new ToolbarButton("插入表格","inserttable","FTB_InsertTable");
button.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertTable(editor,htmlmode) {
if (htmlmode) return;
editor.focus();
var tablescript = FTB_HelperFilesPath + 'ftb.inserttable.aspx';
if (FTB_HelperFilesParameters != '') tablescript += '?' + FTB_HelperFilesParameters;
tableArr = showModalDialog(tablescript,window,'dialogWidth:350px; dialogHeight:210px;help:0;status:0;resizeable:1;');
if (tableArr != null) {
var newTable = editor.document.createElement('TABLE');
for(y=0; y<tableArr['rows']; y++) {
var newRow = newTable.insertRow();
for(x=0; x<tableArr['cols']; x++) {
var newCell = newRow.insertCell();
if (tableArr['valigncells'] != """") {
newCell.valign = tableArr['valigncells'];
}
if (tableArr['haligncells'] != """") {
newCell.align = tableArr['haligncells'];
}
if (tableArr['percentcols'] == true) {
newCell.width = Math.round((1 / tableArr['cols']) * 100) + ""%"";
}
}
}
newTable.border = tableArr['border'];
newTable.cellspacing = tableArr['cellspacing'];
newTable.cellpadding = tableArr['cellpadding'];
if (tableArr['width'] != """") newTable.width = tableArr['width'];
if (tableArr['height'] != """") newTable.height = tableArr['height'];
if (editor.document.selection.type=='Control') {
sel.pasteHTML(newTable.outerHTML);
} else {
sel = editor.document.selection.createRange();
sel.pasteHTML(newTable.outerHTML);
}
} else {
//alert(""You did not select an image"");
}
}
</script>";
return button;
}
}
/// <summary>
/// Returns a ToolbarSeparator
/// </summary>
public static ToolbarSeparator Separator {
get {
return new ToolbarSeparator();
}
}
/// <summary>
/// Returns a ToolbarDropDownList with FontFacesMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList FontFacesMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("字体","FontFacesMenu","FTB_SetFontFace");
dropdown.CommandIdentifier = "fontname";
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_SetFontFace(editor,htmlmode,name,value) {
if (htmlmode) return;
editor.focus();
editor.document.execCommand('fontname','',value);
}
</script>";
return dropdown;
}
}
/// <summary>
/// Returns a ToolbarDropDownList with FontSizesMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList FontSizesMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("字号","FontSizesMenu","FTB_SetFontSize");
dropdown.CommandIdentifier = "fontsize";
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_SetFontSize(editor,htmlmode,name,value) {
if (htmlmode) return;
editor.focus();
editor.document.execCommand('fontsize','',value);
}
</script>";
return dropdown;
}
}
/// <summary>
/// Returns a ToolbarDropDownList with FontForeColorsMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList FontForeColorsMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("字体颜色","FontForeColorsMenu","FTB_SetFontForeColor");
dropdown.CommandIdentifier = "forecolor";
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_SetFontForeColor(editor,htmlmode,name,value) {
if (htmlmode) return;
editor.focus();
editor.document.execCommand('forecolor','',value);
}
</script>";
return dropdown;
}
}
/// <summary>
/// Returns a ToolbarDropDownList with FontBackColorsMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList FontBackColorsMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("背景颜色","FontBackColorsMenu","FTB_SetFontBackColor");
dropdown.CommandIdentifier = "backcolor";
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_SetFontBackColor(editor,htmlmode,name,value) {
if (htmlmode) return;
editor.focus();
editor.document.execCommand('backcolor','',value);
}
</script>";
return dropdown;
}
}
/// <summary>
/// Returns a ToolbarDropDownList with StyleMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList StyleMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("样式","StyleMenu","FTB_SetStyle");
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_SetStyle(editor,htmlmode,name,value) {
if (htmlmode) return;
if (value != '') {
editor.focus();
editor.document.execCommand('removeFormat');
editor.document.execCommand('formatBlock','','Normal');
sel = editor.document.selection.createRange();
html = '<span class=\'' + value + '\'>' + sel.htmlText + '</span>';
sel.pasteHTML(html);
}
}
</script>";
return dropdown;
}
}
/// <summary>
/// Returns a ToolbarDropDownList with InsertHtmlMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList InsertHtmlMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("插入 HTML","InsertHtmlMenu","FTB_InsertHtml");
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertHtml(editor,htmlmode,name,value) {
if (htmlmode) return;
editor.focus();
sel = editor.document.selection.createRange();
sel.pasteHTML(value);
}
</script>";
return dropdown;
}
}
/// <summary>
/// Returns a ToolbarDropDownList with SymbolsMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList SymbolsMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("插入符号","SymbolsMenu","FTB_InsertSymbol");
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_InsertSymbol(editor,htmlmode,name,value) {
if (htmlmode) return;
editor.focus();
sel = editor.document.selection.createRange();
sel.pasteHTML(value);
}
</script>";
return dropdown;
}
}
/// <summary>
/// Returns a ToolbarDropDownList with ParagraphMenu JavaScript functions builtin. Items will be filled by FreeTextBox.FillEmptyDefaultDropDowns.
/// </summary>
public static ToolbarDropDownList ParagraphMenu {
get {
ToolbarDropDownList dropdown = new ToolbarDropDownList("段落格式","ParagraphMenu","FTB_SetParagraph");
dropdown.ScriptBlock = @"<script language=""JavaScript"">
function FTB_SetParagraph(editor,htmlmode,name,value) {
if (htmlmode) return;
editor.focus();
if (value == '<body>') {
editor.document.execCommand('formatBlock','','Normal');
editor.document.execCommand('removeFormat');
return;
}
editor.document.execCommand('formatBlock','',value);
}
</script>";
return dropdown;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -