[9.0.05.dev.a] Tinymce toolbar sticked under admin bar
This commit is contained in:
parent
ff4705924a
commit
7c8e2f990d
78
core/vendor/tinymce/init.js
vendored
78
core/vendor/tinymce/init.js
vendored
@ -141,3 +141,81 @@ tinymce.init({
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
|
||||
tinymce.PluginManager.add('stickytoolbar', function(editor, url) {
|
||||
editor.on('init', function() {
|
||||
setSticky();
|
||||
});
|
||||
|
||||
$(window).on('scroll', function() {
|
||||
setSticky();
|
||||
});
|
||||
|
||||
function setSticky() {
|
||||
var container = editor.editorContainer;
|
||||
var toolbars = $(container).find('.mce-toolbar-grp');
|
||||
var statusbar = $(container).find('.mce-statusbar');
|
||||
|
||||
if (isSticky()) {
|
||||
$(container).css({
|
||||
paddingTop: toolbars.outerHeight()
|
||||
});
|
||||
|
||||
if (isAtBottom()) {
|
||||
toolbars.css({
|
||||
top: 'auto',
|
||||
bottom: statusbar.outerHeight(),
|
||||
position: 'absolute',
|
||||
width: '100%',
|
||||
borderBottom: 'none'
|
||||
});
|
||||
} else {
|
||||
toolbars.css({
|
||||
top: 45,
|
||||
bottom: 'auto',
|
||||
position: 'fixed',
|
||||
width: $(container).width(),
|
||||
borderBottom: '1px solid rgba(0,0,0,0.2)'
|
||||
});
|
||||
}
|
||||
} else {
|
||||
$(container).css({
|
||||
paddingTop: 0
|
||||
});
|
||||
|
||||
toolbars.css({
|
||||
position: 'relative',
|
||||
width: 'auto',
|
||||
borderBottom: 'none'
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function isSticky() {
|
||||
var container = editor.editorContainer,
|
||||
editorTop = container.getBoundingClientRect().top;
|
||||
|
||||
if (editorTop < 0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function isAtBottom() {
|
||||
var container = editor.editorContainer,
|
||||
editorTop = container.getBoundingClientRect().top;
|
||||
|
||||
var toolbarHeight = $(container).find('.mce-toolbar-grp').outerHeight();
|
||||
var footerHeight = $(container).find('.mce-statusbar').outerHeight();
|
||||
|
||||
var hiddenHeight = -($(container).outerHeight() - toolbarHeight - footerHeight);
|
||||
|
||||
if (editorTop < hiddenHeight) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
});
|
Loading…
Reference in New Issue
Block a user