KEditor is a jQuery plugin which provides a content editor with drag n drop, configurable contents
Changes:
Fixes:
Changes:
src\css
to ignore lis #80Fixes:
Changes:
window
properties for instance of KEditor. When iframeMode
is true
, window
is window of iframeid
for styles in iframeMode
data-categories
to data-keditor-categories
for avoiding conflict data-* attributes with dynamic componentsform
tags inside #keditor-setting-forms
submit to other pageFixes:
Changes
/*
* @option {Boolean} snippetsFilterEnabled Enable filtering snippets by categories and text searching or not
* @option {String} snippetsCategoriesSeparator The separator character between each categories
*/
data-title
to data-keditor-title
for avoiding conflict with dynamic component #46Fixes:
Changes
/*
* @option {Boolean} containerSettingEnabled Enable setting panel for container
* @option {Function} containerSettingInitFunction Method will be called when initializing setting panel for container
* @option {Function} containerSettingShowFunction Method will be called when setting panel for container is showed
* @option {Function} containerSettingHideFunction Method will be called when setting panel for container is hidden
*/
/*
* @option {Object} extraTabs Extra tabs besides Containers and Components tabs in sidebar. Format: { tabName: { text: 'My Extra Tab #1', title: 'My Extra Tab #1', content: 'Here is content of My Extra Tab #1' } }
*/
/*
* @option {Boolean} snippetsTooltipEnabled Bootstrap tooltip is enable for snippet or not
* @option {String} snippetsTooltipPosition Position of Bootstrap tooltip for snippet. Can be 'left', 'right', 'top' and 'bottom'
*/
/*
* @option {String} tabContainersText Text for Containers tab
* @option {String} tabContainersTitle Title for Containers tab
* @option {String} tabComponentsText Text for Components tab
* @option {String} tabComponentsTitle Title for Components tab
* @option {Boolean} tabTooltipEnabled Bootstrap Tooltip is enabled for Component and Container tab or not
*/
initSettingForm
, showSettingForm
, hideSettingForm
, init
, destroy
, getContent
methods are optional in component type handleblank
component.keditor-snippet
and decrease width of preview photo from 200px
to 180px
Changes
data-*
attributes of dynamic component from div which has data-dynamic-href
to component div (which has data-type^=component-
)Fix bugs
/**
* @option {Function} onSidebarToggled Method will be called after toggled sidebar. Arguments: isOpened
*/
data-dynamic-href
attribute on HTML tags./**
* @option {Function} onDynamicContentLoaded Callback will be called after dynamic content is loaded. Arguments: dynamicElement, response, status, xhr
* @option {Function} onDynamicContentError Callback will be called if loading dynamic content is error, abort or timeout. Arguments: dynamicElement, response, status, xhr
*/
/**
* @option {String} btnMoveContainerText Text content for move button of container
* @option {String} btnMoveComponentText Text content for move button of component
* @option {String} btnSettingContainerText Text content for setting button of container
* @option {String} btnSettingComponentText Text content for setting button of component
* @option {String} btnDuplicateContainerText Text content for duplicate button of container
* @option {String} btnDuplicateComponentText Text content for duplicate button of component
* @option {String} btnDeleteContainerText Text content for delete button of container
* @option {String} btnDeleteComponentText Text content for delete button of component
*/
/**
* @option {String|Function} defaultComponentType Default component type of component. If type of component does not exist in KEditor.components, will be used 'defaultComponentType' as type of this component. If is function, argument is component - jQuery object of component
*/
/**
* @option {Function} onInitContainer Callback will be called when initializing container. It can return array of jQuery objects which will be initialized as editable components in container content (NOTE: these objects MUST be under elements which have attribute data-type="container-content"). By default, all first level sections under container content will be initialized. Arguments: container
* @option {Function} onBeforeContainerDeleted Callback will be called before container is deleted. Arguments: event, selectedContainer
* @option {Function} onContainerDeleted Callback will be called after container and its components are already deleted. Arguments: event, selectedContainer
* @option {Function} onContainerChanged Callback will be called when content of container is changed. It can be when container received new component from snippet or from other container. Or content of any components are changed or any components are deleted or duplicated. Arguments: event, changedContainer
* @option {Function} onContainerDuplicated Callback will be called when a container is duplicated. Arguments: event, originalContainer, newContainer
* @option {Function} onContainerSelected Callback will be called when a container is selected. Arguments: event, selectedContainer
* @option {Function} onContainerSnippetDropped Callback will be called when a container snippet is dropped into content area. Arguments: event, newContainer, droppedContainer
/**
* @option {Function} onComponentReady Callback will be called after component is initialized. This callback is available or not is depend on component type handler.
* @option {Function} onInitComponent Callback will be called when initializing component. Arguments: component
* @option {Function} onBeforeComponentDeleted Callback will be called before a component is deleted. Arguments: event, selectedComponent
* @option {Function} onComponentDeleted Callback will be called after a component is deleted. Arguments: event, selectedComponent
* @option {Function} onComponentChanged Callback will be called when content of a component is changed. Arguments: event, changedComponent
* @option {Function} onComponentDuplicated Callback will be called when a component is duplicated. Arguments: event, originalComponent, newComponent
* @option {Function} onComponentSelected Callback will be called when a component is selected. Arguments: event, selectedComponent
* @option {Function} onComponentSnippetDropped Callback will be called after a component snippet is dropped into a container. Arguments: event, newComponent, droppedComponent
*/
onInitContent
is changed to onInitContentArea
changedSection
in callback onSectionChanged
New callback:
/**
* @option {Function} onInitContent Method will be called when initializing content area. It can return array of jQuery objects which will be initialized as editable section in content area. By default, all first level sections under content area will be initialized.
* @option {Function} onInitSection Method will be called when initializing section after dropped snippet into content are. Arguments: section
* @option {Function} onContentChanged Callback will be called when content is changed. Arguments: event
* @option {Function} onSnippetDropped Callback will be called when snippet is dropped into content area. Arguments: event, newSection, droppedSnippet
* @option {Function} onBeforeSectionDeleted Callback will be called before selected section is deleted. Arguments: event, btnRemove, selectedSection
* @option {Function} onSectionChanged Callback will be called when content of section is changed. Arguments: event, changedSection
* @option {Function} onSectionDuplicated Callback will be called when section is duplicated. Arguments: event, originalSection, newSection
* @option {Function} onSectionSelected Callback will be called when section is selected. Arguments: event, selectedSection
*/