You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
103 lines
2.7 KiB
103 lines
2.7 KiB
/*!
|
|
* Help dialog plugin for Editor.md
|
|
*
|
|
* @file help-dialog.js
|
|
* @author pandao
|
|
* @version 1.2.0
|
|
* @updateTime 2015-03-08
|
|
* {@link https://github.com/pandao/editor.md}
|
|
* @license MIT
|
|
*/
|
|
|
|
(function() {
|
|
|
|
var factory = function (exports) {
|
|
|
|
var $ = jQuery;
|
|
var pluginName = "help-dialog";
|
|
|
|
exports.fn.helpDialog = function() {
|
|
var _this = this;
|
|
var lang = this.lang;
|
|
var editor = this.editor;
|
|
var settings = this.settings;
|
|
var path = settings.pluginPath + pluginName + "/";
|
|
var classPrefix = this.classPrefix;
|
|
var dialogName = classPrefix + pluginName, dialog;
|
|
var dialogLang = lang.dialog.help;
|
|
|
|
if (editor.find("." + dialogName).length < 1)
|
|
{
|
|
var dialogContent = "<div class=\"markdown-body\" style=\"font-family:微软雅黑, Helvetica, Tahoma, STXihei,Arial;height:390px;overflow:auto;font-size:14px;border-bottom:1px solid #ddd;padding:0 20px 20px 0;\"></div>";
|
|
|
|
dialog = this.createDialog({
|
|
name : dialogName,
|
|
title : dialogLang.title,
|
|
width : 840,
|
|
height : 540,
|
|
mask : settings.dialogShowMask,
|
|
drag : settings.dialogDraggable,
|
|
content : dialogContent,
|
|
lockScreen : settings.dialogLockScreen,
|
|
maskStyle : {
|
|
opacity : settings.dialogMaskOpacity,
|
|
backgroundColor : settings.dialogMaskBgColor
|
|
},
|
|
buttons : {
|
|
close : [lang.buttons.close, function() {
|
|
this.hide().lockScreen(false).hideMask();
|
|
|
|
return false;
|
|
}]
|
|
}
|
|
});
|
|
}
|
|
|
|
dialog = editor.find("." + dialogName);
|
|
|
|
this.dialogShowMask(dialog);
|
|
this.dialogLockScreen();
|
|
dialog.show();
|
|
|
|
var helpContent = dialog.find(".markdown-body");
|
|
|
|
if (helpContent.html() === "")
|
|
{
|
|
$.get(path + "help.md", function(text) {
|
|
var md = exports.$marked(text);
|
|
helpContent.html(md);
|
|
|
|
helpContent.find("a").attr("target", "_blank");
|
|
});
|
|
}
|
|
};
|
|
|
|
};
|
|
|
|
// CommonJS/Node.js
|
|
if (typeof require === "function" && typeof exports === "object" && typeof module === "object")
|
|
{
|
|
module.exports = factory;
|
|
}
|
|
else if (typeof define === "function") // AMD/CMD/Sea.js
|
|
{
|
|
if (define.amd) { // for Require.js
|
|
|
|
define(["editormd"], function(editormd) {
|
|
factory(editormd);
|
|
});
|
|
|
|
} else { // for Sea.js
|
|
define(function(require) {
|
|
var editormd = require("./../../editormd");
|
|
factory(editormd);
|
|
});
|
|
}
|
|
}
|
|
else
|
|
{
|
|
factory(window.editormd);
|
|
}
|
|
|
|
})();
|