umeditor-rails 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +14 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +31 -0
- data/Rakefile +2 -0
- data/app/assets/javascripts/umeditor.js +2 -0
- data/lib/tasks/umeditor.rake +12 -0
- data/lib/umeditor/rails/engine.rb +20 -0
- data/lib/umeditor/rails/version.rb +6 -0
- data/lib/umeditor/rails.rb +7 -0
- data/lib/umeditor-rails.rb +1 -0
- data/umeditor-rails.gemspec +23 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/emotion.css +87 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/emotion.js +272 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/0.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/bface.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/cface.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/fface.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/jxface2.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/neweditor-tab-bg.png +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/tface.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/wface.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/emotion/images/yface.gif +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/formula/formula.css +32 -0
- data/vendor/assets/javascripts/umeditor/dialogs/formula/formula.html +212 -0
- data/vendor/assets/javascripts/umeditor/dialogs/formula/formula.js +124 -0
- data/vendor/assets/javascripts/umeditor/dialogs/formula/images/formula.png +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/image/image.css +42 -0
- data/vendor/assets/javascripts/umeditor/dialogs/image/image.js +445 -0
- data/vendor/assets/javascripts/umeditor/dialogs/image/images/close.png +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/image/images/upload1.png +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/image/images/upload2.png +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/link/link.js +73 -0
- data/vendor/assets/javascripts/umeditor/dialogs/map/map.html +148 -0
- data/vendor/assets/javascripts/umeditor/dialogs/map/map.js +263 -0
- data/vendor/assets/javascripts/umeditor/dialogs/video/images/center_focus.jpg +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/video/images/left_focus.jpg +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/video/images/none_focus.jpg +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/video/images/right_focus.jpg +0 -0
- data/vendor/assets/javascripts/umeditor/dialogs/video/video.css +59 -0
- data/vendor/assets/javascripts/umeditor/dialogs/video/video.js +282 -0
- data/vendor/assets/javascripts/umeditor/index.html +277 -0
- data/vendor/assets/javascripts/umeditor/lang/en/en.js +150 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/addimage.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/alldeletebtnhoverskin.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/alldeletebtnupskin.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/background.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/button.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/copy.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/deletedisable.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/deleteenable.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/imglabel.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/listbackground.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/localimage.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/music.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/rotateleftdisable.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/rotateleftenable.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/rotaterightdisable.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/rotaterightenable.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/en/images/upload.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/zh-cn/images/copy.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/zh-cn/images/imglabel.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/zh-cn/images/localimage.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/zh-cn/images/music.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/zh-cn/images/upload.png +0 -0
- data/vendor/assets/javascripts/umeditor/lang/zh-cn/zh-cn.js +150 -0
- data/vendor/assets/javascripts/umeditor/themes/default/css/umeditor.css +773 -0
- data/vendor/assets/javascripts/umeditor/themes/default/css/umeditor.min.css +8 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/caret.png +0 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/close.png +0 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/icons.gif +0 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/icons.png +0 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/ok.gif +0 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/pop-bg.png +0 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/spacer.gif +0 -0
- data/vendor/assets/javascripts/umeditor/themes/default/images/videologo.gif +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/jquery.min.js +6 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/Symbola.eot +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/Symbola.otf +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/Symbola.svg +5102 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/Symbola.ttf +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/Symbola.woff +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/STIXFontLicense2010.txt +103 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneral-webfont.eot +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneral-webfont.svg +3318 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneral-webfont.ttf +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneral-webfont.woff +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbol-webfont.eot +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbol-webfont.svg +1738 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbol-webfont.ttf +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbol-webfont.woff +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbolita-webfont.eot +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbolita-webfont.svg +1137 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbolita-webfont.ttf +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralbolita-webfont.woff +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralitalic-webfont.eot +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralitalic-webfont.svg +1089 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralitalic-webfont.ttf +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/font/stixgeneral-bundle/stixgeneralitalic-webfont.woff +0 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/mathquill.css +357 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/mathquill.js +3888 -0
- data/vendor/assets/javascripts/umeditor/third-party/mathquill/mathquill.min.js +2 -0
- data/vendor/assets/javascripts/umeditor/umeditor.config.js +249 -0
- data/vendor/assets/javascripts/umeditor/umeditor.js +10923 -0
- data/vendor/assets/javascripts/umeditor/umeditor.min.js +264 -0
- metadata +178 -0
@@ -0,0 +1,212 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html lang="en">
|
3
|
+
<head>
|
4
|
+
<meta charset="UTF-8">
|
5
|
+
<title>Document</title>
|
6
|
+
<link rel="stylesheet" href="../../third-party/mathquill/mathquill.css"/>
|
7
|
+
<style>
|
8
|
+
html, body, .main{
|
9
|
+
margin: 0;
|
10
|
+
padding: 0;
|
11
|
+
overflow: hidden;
|
12
|
+
}
|
13
|
+
.main{
|
14
|
+
width:1024px;
|
15
|
+
height:1024px;
|
16
|
+
}
|
17
|
+
.mathquill-editable,
|
18
|
+
.mathquill-rendered-math{
|
19
|
+
border: 0px;
|
20
|
+
padding: 0px;
|
21
|
+
margin:4px;
|
22
|
+
}
|
23
|
+
</style>
|
24
|
+
</head>
|
25
|
+
<body>
|
26
|
+
|
27
|
+
<div class="main">
|
28
|
+
<div class="mathquill-editable"></div>
|
29
|
+
</div>
|
30
|
+
|
31
|
+
<div>
|
32
|
+
<input id="blurHelper" />
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<script src="../../third-party/jquery.min.js"></script>
|
36
|
+
<script src="../../third-party/mathquill/mathquill.js"></script>
|
37
|
+
<script>
|
38
|
+
$(function(){
|
39
|
+
|
40
|
+
var UM = parent.UM,
|
41
|
+
$iframe = $(getSelfIframe()),
|
42
|
+
editorId = $iframe.parents('.edui-body-container').attr('id'),
|
43
|
+
editor = UM.getEditor(editorId),
|
44
|
+
timer;
|
45
|
+
|
46
|
+
/* 获得当前公式所在的iframe节点 */
|
47
|
+
function getSelfIframe(){
|
48
|
+
var iframes = parent.document.getElementsByTagName('iframe');
|
49
|
+
for (var key in iframes) {
|
50
|
+
if (iframes[key].contentWindow == window) {
|
51
|
+
return iframes[key];
|
52
|
+
}
|
53
|
+
}
|
54
|
+
return null;
|
55
|
+
}
|
56
|
+
/* 获得当前url上的hash存储的参数值 */
|
57
|
+
function getLatex() {
|
58
|
+
return $iframe.attr('data-latex') || '';
|
59
|
+
}
|
60
|
+
/* 保存场景 */
|
61
|
+
function saveScene(){
|
62
|
+
timer && clearTimeout(timer);
|
63
|
+
timer = setTimeout(function(){
|
64
|
+
editor.fireEvent('savescene');
|
65
|
+
editor.fireEvent('contentchange');
|
66
|
+
editor.fireEvent('selectionchange');
|
67
|
+
timer = null;
|
68
|
+
}, 300);
|
69
|
+
}
|
70
|
+
/* 设置编辑器可编辑 */
|
71
|
+
function enableEditor(){
|
72
|
+
if(editor.body.contentEditable == 'false') {
|
73
|
+
editor.setEnabled();
|
74
|
+
}
|
75
|
+
}
|
76
|
+
/* 设置编辑器不可编辑 */
|
77
|
+
function disableEditor(){
|
78
|
+
if(editor.body.contentEditable == 'true') {
|
79
|
+
editor.setDisabled(['undo', 'redo', 'preview', 'formula'], true);
|
80
|
+
}
|
81
|
+
}
|
82
|
+
|
83
|
+
/* 公式 */
|
84
|
+
var Formula = function(){
|
85
|
+
var _this = this,
|
86
|
+
latex = getLatex();
|
87
|
+
|
88
|
+
this.isFocus = false;
|
89
|
+
this.isDisabled = false;
|
90
|
+
|
91
|
+
/* 加载公式内容 */
|
92
|
+
this.$mathquill = $('.mathquill-editable').mathquill('latex', latex);
|
93
|
+
|
94
|
+
/* 设置活动状态的公式iframe */
|
95
|
+
this.$mathquill.on('mousedown', function(){
|
96
|
+
/* 编辑器不可用时,公式也不可用 */
|
97
|
+
if(_this.disabled) return false;
|
98
|
+
|
99
|
+
/* 第一次点击当前公式,设置公式活动 */
|
100
|
+
if(!$iframe.hasClass('edui-formula-active')) {
|
101
|
+
disableEditor();
|
102
|
+
editor.blur();
|
103
|
+
editor.$body.find('iframe').not($iframe).each(function(k, v){
|
104
|
+
v.contentWindow.formula.blur();
|
105
|
+
});
|
106
|
+
if(_this.$mathquill.find('.cursor').css('display') == 'none') {
|
107
|
+
_this.refresh();
|
108
|
+
_this.$mathquill.addClass('hasCursor');
|
109
|
+
}
|
110
|
+
}
|
111
|
+
_this.focus();
|
112
|
+
});
|
113
|
+
editor.addListener('click', function(){
|
114
|
+
_this.blur();
|
115
|
+
enableEditor();
|
116
|
+
});
|
117
|
+
|
118
|
+
/* 里面focus,编辑器也判断为focus */
|
119
|
+
editor.addListener('isFocus', function(){
|
120
|
+
return _this.isFocus;
|
121
|
+
});
|
122
|
+
/* um不可用,公式也不可编辑 */
|
123
|
+
editor.addListener('setDisabled', function(type, except){
|
124
|
+
if (!(except && except.join(' ').indexOf('formula') != -1) && _this.isDisabled != true ) {
|
125
|
+
_this.setDisabled();
|
126
|
+
}
|
127
|
+
});
|
128
|
+
editor.addListener('setEnabled', function(){
|
129
|
+
if (_this.isDisabled != false) {
|
130
|
+
_this.setEnabled();
|
131
|
+
}
|
132
|
+
});
|
133
|
+
|
134
|
+
/* 设置更新外层iframe的大小和属性 */
|
135
|
+
$(document.body).on('keydown', function(){
|
136
|
+
_this.updateIframe();
|
137
|
+
}).on('keyup', function(){
|
138
|
+
_this.updateIframe();
|
139
|
+
});
|
140
|
+
|
141
|
+
/* 清除初始化的高亮状态 */
|
142
|
+
this.$mathquill.removeClass('hasCursor');
|
143
|
+
|
144
|
+
/* 初始化后延迟刷新外层iframe大小 */
|
145
|
+
setTimeout(function(){
|
146
|
+
_this.updateIframe();
|
147
|
+
}, 300);
|
148
|
+
};
|
149
|
+
|
150
|
+
Formula.prototype = {
|
151
|
+
focus:function(){
|
152
|
+
$iframe.addClass('edui-formula-active');
|
153
|
+
this.isFocus = true;
|
154
|
+
},
|
155
|
+
blur:function(){
|
156
|
+
$iframe.removeClass('edui-formula-active');
|
157
|
+
this.removeCursor();
|
158
|
+
this.isFocus = false;
|
159
|
+
},
|
160
|
+
removeCursor: function(){
|
161
|
+
this.$mathquill.find('span.cursor').hide();
|
162
|
+
this.$mathquill.parent().find('.hasCursor').removeClass('hasCursor');
|
163
|
+
},
|
164
|
+
updateIframe: function(){
|
165
|
+
$iframe.width(this.$mathquill.width()+8).height(this.$mathquill.height()+8);
|
166
|
+
var latex = $iframe.attr('data-latex'),
|
167
|
+
newLatex = this.getLatex();
|
168
|
+
if(latex != newLatex) {
|
169
|
+
$iframe.attr('data-latex', this.getLatex());
|
170
|
+
saveScene();
|
171
|
+
}
|
172
|
+
},
|
173
|
+
insertLatex: function(latex){
|
174
|
+
this.$mathquill.mathquill('write', latex);
|
175
|
+
this.updateIframe();
|
176
|
+
this.removeCursor();
|
177
|
+
},
|
178
|
+
setLatex: function(latex){
|
179
|
+
this.$mathquill.mathquill('latex', latex);
|
180
|
+
this.updateIframe();
|
181
|
+
},
|
182
|
+
getLatex: function(){
|
183
|
+
return this.$mathquill.mathquill('latex');
|
184
|
+
},
|
185
|
+
redraw: function(){
|
186
|
+
this.$mathquill.mathquill('redraw');
|
187
|
+
},
|
188
|
+
setDisabled: function(){
|
189
|
+
this.blur();
|
190
|
+
var latex = this.getLatex();
|
191
|
+
this.$mathquill.mathquill('revert').text(latex).mathquill();
|
192
|
+
this.updateIframe();
|
193
|
+
this.isDisabled = true;
|
194
|
+
},
|
195
|
+
setEnabled: function(){
|
196
|
+
this.$mathquill.removeClass('mathquill-rendered-math');
|
197
|
+
this.refresh();
|
198
|
+
this.isDisabled = false;
|
199
|
+
},
|
200
|
+
refresh: function(){
|
201
|
+
var latex = this.getLatex();
|
202
|
+
this.$mathquill.mathquill('revert').text(latex).mathquill('editable');
|
203
|
+
this.updateIframe();
|
204
|
+
}
|
205
|
+
};
|
206
|
+
|
207
|
+
/* 绑定到window上,给上级window调用 */
|
208
|
+
window.formula = new Formula();
|
209
|
+
});
|
210
|
+
</script>
|
211
|
+
</body>
|
212
|
+
</html>
|
@@ -0,0 +1,124 @@
|
|
1
|
+
(function () {
|
2
|
+
|
3
|
+
var editor = null;
|
4
|
+
|
5
|
+
UM.registerWidget('formula', {
|
6
|
+
|
7
|
+
tpl: "<link type=\"text/css\" rel=\"stylesheet\" href=\"<%=formula_url%>formula.css\">" +
|
8
|
+
"<div class=\"edui-formula-wrapper\">" +
|
9
|
+
"<ul class=\"edui-tab-nav\"></ul>" +
|
10
|
+
"<div class=\"edui-tab-content\"></div>" +
|
11
|
+
"</div>",
|
12
|
+
|
13
|
+
sourceData: {
|
14
|
+
formula: {
|
15
|
+
'common': [
|
16
|
+
"{/}frac{ }{ }", "^{ }/_{ }", "x^{ }", "x_{ }", "x^{ }_{ }", "{/}bar{ }", "{/}sqrt{ }", "{/}nthroot{ }{ }",
|
17
|
+
"{/}sum^{ }_{n=}", "{/}sum", "{/}log_{ }", "{/}ln", "{/}int_{ }^{ }", "{/}oint_{ }^{ }"
|
18
|
+
],
|
19
|
+
'symbol': [
|
20
|
+
"+", "-", "{/}pm", "{/}times", "{/}ast", "{/}div", "/", "{/}bigtriangleup",
|
21
|
+
"=", "{/}ne", "{/}approx", ">", "<", "{/}ge", "{/}le", "{/}infty",
|
22
|
+
"{/}cap", "{/}cup", "{/}because", "{/}therefore", "{/}subset", "{/}supset", "{/}subseteq", "{/}supseteq",
|
23
|
+
"{/}nsubseteq", "{/}nsupseteq", "{/}in", "{/}ni", "{/}notin", "{/}mapsto", "{/}leftarrow", "{/}rightarrow",
|
24
|
+
"{/}Leftarrow", "{/}Rightarrow", "{/}leftrightarrow", "{/}Leftrightarrow"
|
25
|
+
],
|
26
|
+
'letter': [
|
27
|
+
"{/}alpha", "{/}beta", "{/}gamma", "{/}delta", "{/}varepsilon", "{/}varphi", "{/}lambda", "{/}mu",
|
28
|
+
"{/}rho", "{/}sigma", "{/}omega", "{/}Gamma", "{/}Delta", "{/}Theta", "{/}Lambda", "{/}Xi",
|
29
|
+
"{/}Pi", "{/}Sigma", "{/}Upsilon", "{/}Phi", "{/}Psi", "{/}Omega"
|
30
|
+
]
|
31
|
+
}
|
32
|
+
},
|
33
|
+
initContent: function (_editor, $widget) {
|
34
|
+
|
35
|
+
var me = this,
|
36
|
+
formula = me.sourceData.formula,
|
37
|
+
lang = _editor.getLang('formula').static,
|
38
|
+
formulaUrl = UMEDITOR_CONFIG.UMEDITOR_HOME_URL + 'dialogs/formula/',
|
39
|
+
options = $.extend({}, lang, { 'formula_url': formulaUrl }),
|
40
|
+
$root = me.root();
|
41
|
+
|
42
|
+
if (me.inited) {
|
43
|
+
me.preventDefault();
|
44
|
+
return;
|
45
|
+
}
|
46
|
+
me.inited = true;
|
47
|
+
|
48
|
+
editor = _editor;
|
49
|
+
me.$widget = $widget;
|
50
|
+
|
51
|
+
$root.html($.parseTmpl(me.tpl, options));
|
52
|
+
me.tabs = $.eduitab({selector: "#edui-formula-tab-Jpanel"});
|
53
|
+
|
54
|
+
/* 初始化popup的内容 */
|
55
|
+
var headHtml = [], xMax = 0, yMax = 0,
|
56
|
+
$tabContent = me.root().find('.edui-tab-content');
|
57
|
+
$.each(formula, function (k, v) {
|
58
|
+
var contentHtml = [];
|
59
|
+
$.each(v, function (i, f) {
|
60
|
+
contentHtml.push('<li class="edui-formula-latex-item" data-latex="' + f + '" style="background-position:-' + (xMax * 30) + 'px -' + (yMax * 30) + 'px"></li>');
|
61
|
+
if (++xMax >=8) {
|
62
|
+
++yMax; xMax = 0;
|
63
|
+
}
|
64
|
+
});
|
65
|
+
yMax++; xMax = 0;
|
66
|
+
$tabContent.append('<div class="edui-tab-pane"><ul>' + contentHtml.join('') + '</ul>');
|
67
|
+
headHtml.push('<li class="edui-tab-item"><a href="javascript:void(0);" class="edui-tab-text">' + lang['lang_tab_' + k] + '</a></li>');
|
68
|
+
});
|
69
|
+
headHtml.push('<li class="edui-formula-clearboth"></li>');
|
70
|
+
$root.find('.edui-tab-nav').html(headHtml.join(''));
|
71
|
+
$root.find('.edui-tab-content').append('<div class="edui-formula-clearboth"></div>');
|
72
|
+
|
73
|
+
/* 选中第一个tab */
|
74
|
+
me.switchTab(0);
|
75
|
+
},
|
76
|
+
initEvent: function () {
|
77
|
+
var me = this;
|
78
|
+
|
79
|
+
//防止点击过后关闭popup
|
80
|
+
me.root().on('click', function (e) {
|
81
|
+
return false;
|
82
|
+
});
|
83
|
+
|
84
|
+
//点击tab切换菜单
|
85
|
+
me.root().find('.edui-tab-nav').delegate('.edui-tab-item', 'click', function (evt) {
|
86
|
+
me.switchTab(this);
|
87
|
+
return false;
|
88
|
+
});
|
89
|
+
|
90
|
+
//点击选中公式
|
91
|
+
me.root().find('.edui-tab-pane').delegate('.edui-formula-latex-item', 'click', function (evt) {
|
92
|
+
var $item = $(this),
|
93
|
+
latex = $item.attr('data-latex') || '';
|
94
|
+
|
95
|
+
if (latex) {
|
96
|
+
me.insertLatex(latex.replace("{/}", "\\"));
|
97
|
+
}
|
98
|
+
me.$widget.edui().hide();
|
99
|
+
return false;
|
100
|
+
});
|
101
|
+
},
|
102
|
+
switchTab:function(index){
|
103
|
+
var me = this,
|
104
|
+
$root = me.root(),
|
105
|
+
index = $.isNumeric(index) ? index:$.inArray(index, $root.find('.edui-tab-nav .edui-tab-item'));
|
106
|
+
|
107
|
+
$root.find('.edui-tab-nav .edui-tab-item').removeClass('edui-active').eq(index).addClass('edui-active');
|
108
|
+
$root.find('.edui-tab-content .edui-tab-pane').removeClass('edui-active').eq(index).addClass('edui-active');
|
109
|
+
|
110
|
+
/* 自动长高 */
|
111
|
+
me.autoHeight(0);
|
112
|
+
},
|
113
|
+
autoHeight: function () {
|
114
|
+
this.$widget.height(this.root() + 2);
|
115
|
+
},
|
116
|
+
insertLatex: function (latex) {
|
117
|
+
editor.execCommand('formula', latex );
|
118
|
+
},
|
119
|
+
width: 350,
|
120
|
+
height: 400
|
121
|
+
});
|
122
|
+
|
123
|
+
})();
|
124
|
+
|
@@ -0,0 +1,42 @@
|
|
1
|
+
.edui-dialog-image .edui-image-wrapper{font-size: 12px;margin: 15px;}
|
2
|
+
|
3
|
+
/*upload*/
|
4
|
+
.edui-dialog-image .edui-image-upload1{position: absolute;top:50%;left:50%;width:44px;height:38px;margin-top:-19px; margin-left: -22px;}
|
5
|
+
.edui-dialog-image .edui-image-upload2{position:relative;float:left;width:120px;height:120px;margin:5px 0 0 5px;}
|
6
|
+
|
7
|
+
.edui-dialog-image .edui-image-form{position: absolute;left: 0px;top: 0px;width: 100%;height: 100%;opacity: 0;cursor: pointer;}
|
8
|
+
.edui-dialog-image .edui-image-form .edui-image-file{width: 100%;height:100%;filter: alpha(opacity=0)}
|
9
|
+
|
10
|
+
.edui-dialog-image .edui-image-upload1 .edui-image-icon{display: inline-block;width:44px;height:38px;background-image: url('images/upload1.png')}
|
11
|
+
.edui-dialog-image .edui-image-upload1 .edui-image-icon.hover{background-position: -50px 0;}
|
12
|
+
.edui-dialog-image .edui-image-upload2 .edui-image-icon{display: inline-block;width:120px;height:120px;background-image: url('images/upload2.png')}
|
13
|
+
|
14
|
+
.edui-dialog-image .edui-image-dragTip{position: absolute;display:none;top:50%;left:50%;margin-top:30px;margin-left: -60px;
|
15
|
+
color: #222;font-size:14px;text-shadow: 0px 2px 3px #555;}
|
16
|
+
|
17
|
+
.edui-dialog-image .edui-image-content{height:330px;width:100%;position: relative;}
|
18
|
+
|
19
|
+
.edui-dialog-image .edui-image-mask{display: none;position: absolute;top:0;left:0;width: 100%; height: 100%;background-color:#fff;
|
20
|
+
text-align: center;line-height:300px;color:#000;font-size:14px;font-weight:bold;opacity: 0.6;filter: alpha(opacity=60);}
|
21
|
+
.edui-dialog-image .edui-image-mask.edui-active{display: block;}
|
22
|
+
|
23
|
+
/*network*/
|
24
|
+
.edui-dialog-image .edui-image-searchBar{margin: 10px;}
|
25
|
+
.edui-dialog-image .edui-image-searchBar .edui-image-searchTxt{display: inline-block !important;*display: inline !important;*zoom:1;width:400px; border: 1px solid #c5d2ff; height: 20px; line-height: 18px; font-size: 14px; padding: 3px; margin: 0;outline:0;}
|
26
|
+
.edui-dialog-image .edui-image-searchBar .edui-image-searchAdd{display: inline-block !important;*display: inline !important;*zoom:1;
|
27
|
+
width:60px; text-align:center;height: 25px;text-align: center;line-height: 25px;
|
28
|
+
background-color: #ffffff;padding: 0; border: 1px solid #ababab;margin-left: 20px;cursor: pointer;
|
29
|
+
}
|
30
|
+
.edui-dialog-image .edui-image-searchBar .edui-image-searchAdd.hover{
|
31
|
+
background-color: #d5e1f2;
|
32
|
+
padding: 0;
|
33
|
+
border: 1px solid #a3bde3;
|
34
|
+
}
|
35
|
+
.edui-dialog-image .edui-image-searchRes{height:280px;overflow:auto;}
|
36
|
+
|
37
|
+
|
38
|
+
/*common*/
|
39
|
+
.edui-dialog-image .edui-image-item{position:relative;float:left;width:120px;height:120px;border: 1px solid #CCC;cursor: default;margin: 5px 0 0 5px;}
|
40
|
+
.edui-dialog-image .edui-image-item .edui-image-pic{position: absolute;left:-9999px;}
|
41
|
+
.edui-dialog-image .edui-image-item .edui-image-close{position:absolute;right:0;background: url('images/close.png');width:17px;height:17px;cursor:pointer;z-index:1}
|
42
|
+
.edui-dialog-image .edui-image-item.hover .edui-image-close{display: block;}
|