Files
jianfeng-server/public/static/Ueditor/ueditor.parse.js
2025-10-02 10:33:06 +08:00

945 lines
31 KiB
JavaScript
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*!
* UEditor
* version: ueditor
* build: Wed Dec 26 2018 17:25:05 GMT+0800 (CST)
*/
(function () {
(function () {
UE = window.UE || {}
var isIE = !!window.ActiveXObject
// 定义utils工具
var utils = {
removeLastbs: function (url) {
return url.replace(/\/$/, '')
},
extend: function (t, s) {
var a = arguments,
notCover = this.isBoolean(a[a.length - 1]) ? a[a.length - 1] : false,
len = this.isBoolean(a[a.length - 1]) ? a.length - 1 : a.length
for (var i = 1; i < len; i++) {
var x = a[i]
for (var k in x) {
if (!notCover || !t.hasOwnProperty(k)) {
t[k] = x[k]
}
}
}
return t
},
isIE: isIE,
cssRule: isIE ? function (key, style, doc) {
var indexList, index
doc = doc || document
if (doc.indexList) {
indexList = doc.indexList
} else {
indexList = doc.indexList = {}
}
var sheetStyle
if (!indexList[key]) {
if (style === undefined) {
return ''
}
sheetStyle = doc.createStyleSheet('', index = doc.styleSheets.length)
indexList[key] = index
} else {
sheetStyle = doc.styleSheets[indexList[key]]
}
if (style === undefined) {
return sheetStyle.cssText
}
sheetStyle.cssText = sheetStyle.cssText + '\n' + (style || '')
} : function (key, style, doc) {
doc = doc || document
var head = doc.getElementsByTagName('head')[0], node
if (!(node = doc.getElementById(key))) {
if (style === undefined) {
return ''
}
node = doc.createElement('style')
node.id = key
head.appendChild(node)
}
if (style === undefined) {
return node.innerHTML
}
if (style !== '') {
node.innerHTML = node.innerHTML + '\n' + style
} else {
head.removeChild(node)
}
},
domReady: function (onready) {
var doc = window.document
if (doc.readyState === 'complete') {
onready()
} else {
if (isIE) {
(function () {
if (doc.isReady) return
try {
doc.documentElement.doScroll('left')
} catch (error) {
setTimeout(arguments.callee, 0)
return
}
onready()
})()
window.attachEvent('onload', function () {
onready()
})
} else {
doc.addEventListener('DOMContentLoaded', function () {
doc.removeEventListener('DOMContentLoaded', arguments.callee, false)
onready()
}, false)
window.addEventListener('load', function () { onready() }, false)
}
}
},
each: function (obj, iterator, context) {
if (obj == null) return
if (obj.length === +obj.length) {
for (var i = 0, l = obj.length; i < l; i++) {
if (iterator.call(context, obj[i], i, obj) === false) { return false }
}
} else {
for (var key in obj) {
if (obj.hasOwnProperty(key)) {
if (iterator.call(context, obj[key], key, obj) === false) { return false }
}
}
}
},
inArray: function (arr, item) {
var index = -1
this.each(arr, function (v, i) {
if (v === item) {
index = i
return false
}
})
return index
},
pushItem: function (arr, item) {
if (this.inArray(arr, item) == -1) {
arr.push(item)
}
},
trim: function (str) {
return str.replace(/(^[ \t\n\r]+)|([ \t\n\r]+$)/g, '')
},
indexOf: function (array, item, start) {
var index = -1
start = this.isNumber(start) ? start : 0
this.each(array, function (v, i) {
if (i >= start && v === item) {
index = i
return false
}
})
return index
},
hasClass: function (element, className) {
className = className.replace(/(^[ ]+)|([ ]+$)/g, '').replace(/[ ]{2,}/g, ' ').split(' ')
for (var i = 0, ci, cls = element.className; ci = className[i++];) {
if (!new RegExp('\\b' + ci + '\\b', 'i').test(cls)) {
return false
}
}
return i - 1 == className.length
},
addClass: function (elm, classNames) {
if (!elm) return
classNames = this.trim(classNames).replace(/[ ]{2,}/g, ' ').split(' ')
for (var i = 0, ci, cls = elm.className; ci = classNames[i++];) {
if (!new RegExp('\\b' + ci + '\\b').test(cls)) {
cls += ' ' + ci
}
}
elm.className = utils.trim(cls)
},
removeClass: function (elm, classNames) {
classNames = this.isArray(classNames) ? classNames
: this.trim(classNames).replace(/[ ]{2,}/g, ' ').split(' ')
for (var i = 0, ci, cls = elm.className; ci = classNames[i++];) {
cls = cls.replace(new RegExp('\\b' + ci + '\\b'), '')
}
cls = this.trim(cls).replace(/[ ]{2,}/g, ' ')
elm.className = cls
!cls && elm.removeAttribute('className')
},
on: function (element, type, handler) {
var types = this.isArray(type) ? type : type.split(/\s+/),
k = types.length
if (k) {
while (k--) {
type = types[k]
if (element.addEventListener) {
element.addEventListener(type, handler, false)
} else {
if (!handler._d) {
handler._d = {
els: []
}
}
var key = type + handler.toString(), index = utils.indexOf(handler._d.els, element)
if (!handler._d[key] || index == -1) {
if (index == -1) {
handler._d.els.push(element)
}
if (!handler._d[key]) {
handler._d[key] = function (evt) {
return handler.call(evt.srcElement, evt || window.event)
}
}
element.attachEvent('on' + type, handler._d[key])
}
}
}
}
element = null
},
off: function (element, type, handler) {
var types = this.isArray(type) ? type : type.split(/\s+/),
k = types.length
if (k) {
while (k--) {
type = types[k]
if (element.removeEventListener) {
element.removeEventListener(type, handler, false)
} else {
var key = type + handler.toString()
try {
element.detachEvent('on' + type, handler._d ? handler._d[key] : handler)
} catch (e) {}
if (handler._d && handler._d[key]) {
var index = utils.indexOf(handler._d.els, element)
if (index != -1) {
handler._d.els.splice(index, 1)
}
handler._d.els.length == 0 && delete handler._d[key]
}
}
}
}
},
loadFile: (function () {
var tmpList = []
function getItem (doc, obj) {
try {
for (var i = 0, ci; ci = tmpList[i++];) {
if (ci.doc === doc && ci.url == (obj.src || obj.href)) {
return ci
}
}
} catch (e) {
return null
}
}
return function (doc, obj, fn) {
var item = getItem(doc, obj)
if (item) {
if (item.ready) {
fn && fn()
} else {
item.funs.push(fn)
}
return
}
tmpList.push({
doc: doc,
url: obj.src || obj.href,
funs: [fn]
})
if (!doc.body) {
var html = []
for (var p in obj) {
if (p == 'tag') continue
html.push(p + '="' + obj[p] + '"')
}
doc.write('<' + obj.tag + ' ' + html.join(' ') + ' ></' + obj.tag + '>')
return
}
if (obj.id && doc.getElementById(obj.id)) {
return
}
var element = doc.createElement(obj.tag)
delete obj.tag
for (var p in obj) {
element.setAttribute(p, obj[p])
}
element.onload = element.onreadystatechange = function () {
if (!this.readyState || /loaded|complete/.test(this.readyState)) {
item = getItem(doc, obj)
if (item.funs.length > 0) {
item.ready = 1
for (var fi; fi = item.funs.pop();) {
fi()
}
}
element.onload = element.onreadystatechange = null
}
}
element.onerror = function () {
throw Error('The load ' + (obj.href || obj.src) + ' fails,check the url')
}
doc.getElementsByTagName('head')[0].appendChild(element)
}
}())
}
utils.each(['String', 'Function', 'Array', 'Number', 'RegExp', 'Object', 'Boolean'], function (v) {
utils['is' + v] = function (obj) {
return Object.prototype.toString.apply(obj) == '[object ' + v + ']'
}
})
var parselist = {}
UE.parse = {
register: function (parseName, fn) {
parselist[parseName] = fn
},
load: function (opt) {
utils.each(parselist, function (v) {
v.call(opt, utils)
})
}
}
uParse = function (selector, opt) {
utils.domReady(function () {
var contents
if (document.querySelectorAll) {
contents = document.querySelectorAll(selector)
} else {
if (/^#/.test(selector)) {
contents = [document.getElementById(selector.replace(/^#/, ''))]
} else if (/^\./.test(selector)) {
var contents = []
utils.each(document.getElementsByTagName('*'), function (node) {
if (node.className && new RegExp('\\b' + selector.replace(/^\./, '') + '\\b', 'i').test(node.className)) {
contents.push(node)
}
})
} else {
contents = document.getElementsByTagName(selector)
}
}
utils.each(contents, function (v) {
UE.parse.load(utils.extend({root: v, selector: selector}, opt))
})
})
}
})()
UE.parse.register('insertcode', function (utils) {
var pres = this.root.getElementsByTagName('pre')
if (pres.length) {
if (typeof XRegExp === 'undefined') {
var jsurl, cssurl
if (this.rootPath !== undefined) {
jsurl = utils.removeLastbs(this.rootPath) + '/third-party/SyntaxHighlighter/shCore.js'
cssurl = utils.removeLastbs(this.rootPath) + '/third-party/SyntaxHighlighter/shCoreDefault.css'
} else {
jsurl = this.highlightJsUrl
cssurl = this.highlightCssUrl
}
utils.loadFile(document, {
id: 'syntaxhighlighter_css',
tag: 'link',
rel: 'stylesheet',
type: 'text/css',
href: cssurl
})
utils.loadFile(document, {
id: 'syntaxhighlighter_js',
src: jsurl,
tag: 'script',
type: 'text/javascript',
defer: 'defer'
}, function () {
utils.each(pres, function (pi) {
if (pi && /brush/i.test(pi.className)) {
SyntaxHighlighter.highlight(pi)
}
})
})
} else {
utils.each(pres, function (pi) {
if (pi && /brush/i.test(pi.className)) {
SyntaxHighlighter.highlight(pi)
}
})
}
}
})
UE.parse.register('table', function (utils) {
var me = this,
root = this.root,
tables = root.getElementsByTagName('table')
if (tables.length) {
var selector = this.selector
// 追加默认的表格样式
utils.cssRule('table',
selector + ' table.noBorderTable td,' +
selector + ' table.noBorderTable th,' +
selector + ' table.noBorderTable caption{border:1px dashed #ddd !important}' +
selector + ' table.sortEnabled tr.firstRow th,' + selector + ' table.sortEnabled tr.firstRow td{padding-right:20px; background-repeat: no-repeat;' +
'background-position: center right; background-image:url(' + this.rootPath + 'themes/default/images/sortable.png);}' +
selector + ' table.sortEnabled tr.firstRow th:hover,' + selector + ' table.sortEnabled tr.firstRow td:hover{background-color: #EEE;}' +
selector + ' table{margin-bottom:10px;border-collapse:collapse;display:table;}' +
selector + ' td,' + selector + ' th{ background:white; padding: 5px 10px;border: 1px solid #DDD;}' +
selector + ' caption{border:1px dashed #DDD;border-bottom:0;padding:3px;text-align:center;}' +
selector + ' th{border-top:1px solid #BBB;background:#F7F7F7;}' +
selector + ' table tr.firstRow th{border-top:2px solid #BBB;background:#F7F7F7;}' +
selector + ' tr.ue-table-interlace-color-single td{ background: #fcfcfc; }' +
selector + ' tr.ue-table-interlace-color-double td{ background: #f7faff; }' +
selector + ' td p{margin:0;padding:0;}',
document)
// 填充空的单元格
utils.each('td th caption'.split(' '), function (tag) {
var cells = root.getElementsByTagName(tag)
cells.length && utils.each(cells, function (node) {
if (!node.firstChild) {
node.innerHTML = '&nbsp;'
}
})
})
// 表格可排序
var tables = root.getElementsByTagName('table')
utils.each(tables, function (table) {
if (/\bsortEnabled\b/.test(table.className)) {
utils.on(table, 'click', function (e) {
var target = e.target || e.srcElement,
cell = findParentByTagName(target, ['td', 'th'])
var table = findParentByTagName(target, 'table'),
colIndex = utils.indexOf(table.rows[0].cells, cell),
sortType = table.getAttribute('data-sort-type')
if (colIndex != -1) {
sortTable(table, colIndex, me.tableSortCompareFn || sortType)
updateTable(table)
}
})
}
})
// 按照标签名查找父节点
function findParentByTagName (target, tagNames) {
var i, current = target
tagNames = utils.isArray(tagNames) ? tagNames : [tagNames]
while (current) {
for (i = 0; i < tagNames.length; i++) {
if (current.tagName == tagNames[i].toUpperCase()) return current
}
current = current.parentNode
}
return null
}
// 表格排序
function sortTable (table, sortByCellIndex, compareFn) {
var rows = table.rows,
trArray = [],
flag = rows[0].cells[0].tagName === 'TH',
lastRowIndex = 0
for (var i = 0, len = rows.length; i < len; i++) {
trArray[i] = rows[i]
}
var Fn = {
'reversecurrent': function (td1, td2) {
return 1
},
'orderbyasc': function (td1, td2) {
var value1 = td1.innerText || td1.textContent,
value2 = td2.innerText || td2.textContent
return value1.localeCompare(value2)
},
'reversebyasc': function (td1, td2) {
var value1 = td1.innerHTML,
value2 = td2.innerHTML
return value2.localeCompare(value1)
},
'orderbynum': function (td1, td2) {
var value1 = td1[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/),
value2 = td2[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/)
if (value1) value1 = +value1[0]
if (value2) value2 = +value2[0]
return (value1 || 0) - (value2 || 0)
},
'reversebynum': function (td1, td2) {
var value1 = td1[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/),
value2 = td2[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/)
if (value1) value1 = +value1[0]
if (value2) value2 = +value2[0]
return (value2 || 0) - (value1 || 0)
}
}
// 对表格设置排序的标记data-sort-type
table.setAttribute('data-sort-type', compareFn && typeof compareFn === 'string' && Fn[compareFn] ? compareFn : '')
// th不参与排序
flag && trArray.splice(0, 1)
trArray = sort(trArray, function (tr1, tr2) {
var result
if (compareFn && typeof compareFn === 'function') {
result = compareFn.call(this, tr1.cells[sortByCellIndex], tr2.cells[sortByCellIndex])
} else if (compareFn && typeof compareFn === 'number') {
result = 1
} else if (compareFn && typeof compareFn === 'string' && Fn[compareFn]) {
result = Fn[compareFn].call(this, tr1.cells[sortByCellIndex], tr2.cells[sortByCellIndex])
} else {
result = Fn['orderbyasc'].call(this, tr1.cells[sortByCellIndex], tr2.cells[sortByCellIndex])
}
return result
})
var fragment = table.ownerDocument.createDocumentFragment()
for (var j = 0, len = trArray.length; j < len; j++) {
fragment.appendChild(trArray[j])
}
var tbody = table.getElementsByTagName('tbody')[0]
if (!lastRowIndex) {
tbody.appendChild(fragment)
} else {
tbody.insertBefore(fragment, rows[lastRowIndex - range.endRowIndex + range.beginRowIndex - 1])
}
}
// 冒泡排序
function sort (array, compareFn) {
compareFn = compareFn || function (item1, item2) { return item1.localeCompare(item2) }
for (var i = 0, len = array.length; i < len; i++) {
for (var j = i, length = array.length; j < length; j++) {
if (compareFn(array[i], array[j]) > 0) {
var t = array[i]
array[i] = array[j]
array[j] = t
}
}
}
return array
}
// 更新表格
function updateTable (table) {
// 给第一行设置firstRow的样式名称,在排序图标的样式上使用到
if (!utils.hasClass(table.rows[0], 'firstRow')) {
for (var i = 1; i < table.rows.length; i++) {
utils.removeClass(table.rows[i], 'firstRow')
}
utils.addClass(table.rows[0], 'firstRow')
}
}
}
})
UE.parse.register('charts', function (utils) {
utils.cssRule('chartsContainerHeight', '.edui-chart-container { height:' + (this.chartContainerHeight || 300) + 'px}')
var resourceRoot = this.rootPath,
containers = this.root,
sources = null
// 不存在指定的根路径, 则直接退出
if (!resourceRoot) {
return
}
if (sources = parseSources()) {
loadResources()
}
function parseSources () {
if (!containers) {
return null
}
return extractChartData(containers)
}
/**
* 提取数据
*/
function extractChartData (rootNode) {
var data = [],
tables = rootNode.getElementsByTagName('table')
for (var i = 0, tableNode; tableNode = tables[ i ]; i++) {
if (tableNode.getAttribute('data-chart') !== null) {
data.push(formatData(tableNode))
}
}
return data.length ? data : null
}
function formatData (tableNode) {
var meta = tableNode.getAttribute('data-chart'),
metaConfig = {},
data = []
// 提取table数据
for (var i = 0, row; row = tableNode.rows[ i ]; i++) {
var rowData = []
for (var j = 0, cell; cell = row.cells[ j ]; j++) {
var value = (cell.innerText || cell.textContent || '')
rowData.push(cell.tagName == 'TH' ? value : (value | 0))
}
data.push(rowData)
}
// 解析元信息
meta = meta.split(';')
for (var i = 0, metaData; metaData = meta[ i ]; i++) {
metaData = metaData.split(':')
metaConfig[ metaData[ 0 ] ] = metaData[ 1 ]
}
return {
table: tableNode,
meta: metaConfig,
data: data
}
}
// 加载资源
function loadResources () {
loadJQuery()
}
function loadJQuery () {
// 不存在jquery 则加载jquery
if (!window.jQuery) {
utils.loadFile(document, {
src: resourceRoot + '/third-party/jquery-1.10.2.min.js',
tag: 'script',
type: 'text/javascript',
defer: 'defer'
}, function () {
loadHighcharts()
})
} else {
loadHighcharts()
}
}
function loadHighcharts () {
// 不存在Highcharts 则加载Highcharts
if (!window.Highcharts) {
utils.loadFile(document, {
src: resourceRoot + '/third-party/highcharts/highcharts.js',
tag: 'script',
type: 'text/javascript',
defer: 'defer'
}, function () {
loadTypeConfig()
})
} else {
loadTypeConfig()
}
}
// 加载图表差异化配置文件
function loadTypeConfig () {
utils.loadFile(document, {
src: resourceRoot + '/dialogs/charts/chart.config.js',
tag: 'script',
type: 'text/javascript',
defer: 'defer'
}, function () {
render()
})
}
// 渲染图表
function render () {
var config = null,
chartConfig = null,
container = null
for (var i = 0, len = sources.length; i < len; i++) {
config = sources[ i ]
chartConfig = analysisConfig(config)
container = createContainer(config.table)
renderChart(container, typeConfig[ config.meta.chartType ], chartConfig)
}
}
/**
* 渲染图表
* @param container 图表容器节点对象
* @param typeConfig 图表类型配置
* @param config 图表通用配置
* */
function renderChart (container, typeConfig, config) {
$(container).highcharts($.extend({}, typeConfig, {
credits: {
enabled: false
},
exporting: {
enabled: false
},
title: {
text: config.title,
x: -20 // center
},
subtitle: {
text: config.subTitle,
x: -20
},
xAxis: {
title: {
text: config.xTitle
},
categories: config.categories
},
yAxis: {
title: {
text: config.yTitle
},
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
},
tooltip: {
enabled: true,
valueSuffix: config.suffix
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
borderWidth: 1
},
series: config.series
}))
}
/**
* 创建图表的容器
* 新创建的容器会替换掉对应的table对象
* */
function createContainer (tableNode) {
var container = document.createElement('div')
container.className = 'edui-chart-container'
tableNode.parentNode.replaceChild(container, tableNode)
return container
}
// 根据config解析出正确的类别和图表数据信息
function analysisConfig (config) {
var series = [],
// 数据类别
categories = [],
result = [],
data = config.data,
meta = config.meta
// 数据对齐方式为相反的方式, 需要反转数据
if (meta.dataFormat != '1') {
for (var i = 0, len = data.length; i < len; i++) {
for (var j = 0, jlen = data[ i ].length; j < jlen; j++) {
if (!result[ j ]) {
result[ j ] = []
}
result[ j ][ i ] = data[ i ][ j ]
}
}
data = result
}
result = {}
// 普通图表
if (meta.chartType != typeConfig.length - 1) {
categories = data[ 0 ].slice(1)
for (var i = 1, curData; curData = data[ i ]; i++) {
series.push({
name: curData[ 0 ],
data: curData.slice(1)
})
}
result.series = series
result.categories = categories
result.title = meta.title
result.subTitle = meta.subTitle
result.xTitle = meta.xTitle
result.yTitle = meta.yTitle
result.suffix = meta.suffix
} else {
var curData = []
for (var i = 1, len = data[ 0 ].length; i < len; i++) {
curData.push([ data[ 0 ][ i ], data[ 1 ][ i ] | 0 ])
}
// 饼图
series[ 0 ] = {
type: 'pie',
name: meta.tip,
data: curData
}
result.series = series
result.title = meta.title
result.suffix = meta.suffix
}
return result
}
})
UE.parse.register('background', function (utils) {
var me = this,
root = me.root,
p = root.getElementsByTagName('p'),
styles
for (var i = 0, ci; ci = p[i++];) {
styles = ci.getAttribute('data-background')
if (styles) {
ci.parentNode.removeChild(ci)
}
}
// 追加默认的表格样式
styles && utils.cssRule('ueditor_background', me.selector + '{' + styles + '}', document)
})
UE.parse.register('list', function (utils) {
var customCss = [],
customStyle = {
'cn': 'cn-1-',
'cn1': 'cn-2-',
'cn2': 'cn-3-',
'num': 'num-1-',
'num1': 'num-2-',
'num2': 'num-3-',
'dash': 'dash',
'dot': 'dot'
}
utils.extend(this, {
liiconpath: 'http://bs.baidu.com/listicon/',
listDefaultPaddingLeft: '20'
})
var root = this.root,
ols = root.getElementsByTagName('ol'),
uls = root.getElementsByTagName('ul'),
selector = this.selector
if (ols.length) {
applyStyle.call(this, ols)
}
if (uls.length) {
applyStyle.call(this, uls)
}
if (ols.length || uls.length) {
customCss.push(selector + ' .list-paddingleft-1{padding-left:0}')
customCss.push(selector + ' .list-paddingleft-2{padding-left:' + this.listDefaultPaddingLeft + 'px}')
customCss.push(selector + ' .list-paddingleft-3{padding-left:' + this.listDefaultPaddingLeft * 2 + 'px}')
utils.cssRule('list', selector + ' ol,' + selector + ' ul{margin:0;padding:0;}li{clear:both;}' + customCss.join('\n'), document)
}
function applyStyle (nodes) {
var T = this
utils.each(nodes, function (list) {
if (list.className && /custom_/i.test(list.className)) {
var listStyle = list.className.match(/custom_(\w+)/)[1]
if (listStyle == 'dash' || listStyle == 'dot') {
utils.pushItem(customCss, selector + ' li.list-' + customStyle[listStyle] + '{background-image:url(' + T.liiconpath + customStyle[listStyle] + '.gif)}')
utils.pushItem(customCss, selector + ' ul.custom_' + listStyle + '{list-style:none;} ' + selector + ' ul.custom_' + listStyle + ' li{background-position:0 3px;background-repeat:no-repeat}')
} else {
var index = 1
utils.each(list.childNodes, function (li) {
if (li.tagName == 'LI') {
utils.pushItem(customCss, selector + ' li.list-' + customStyle[listStyle] + index + '{background-image:url(' + T.liiconpath + 'list-' + customStyle[listStyle] + index + '.gif)}')
index++
}
})
utils.pushItem(customCss, selector + ' ol.custom_' + listStyle + '{list-style:none;}' + selector + ' ol.custom_' + listStyle + ' li{background-position:0 3px;background-repeat:no-repeat}')
}
switch (listStyle) {
case 'cn':
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:25px}')
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:40px}')
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-3{padding-left:55px}')
break
case 'cn1':
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:30px}')
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:40px}')
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-3{padding-left:55px}')
break
case 'cn2':
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:40px}')
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:55px}')
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-3{padding-left:68px}')
break
case 'num':
case 'num1':
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:25px}')
break
case 'num2':
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:35px}')
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:40px}')
break
case 'dash':
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft{padding-left:35px}')
break
case 'dot':
utils.pushItem(customCss, selector + ' li.list-' + listStyle + '-paddingleft{padding-left:20px}')
}
}
})
}
})
UE.parse.register('vedio', function (utils) {
var video = this.root.getElementsByTagName('video'),
audio = this.root.getElementsByTagName('audio')
document.createElement('video'); document.createElement('audio')
if (video.length || audio.length) {
var sourcePath = utils.removeLastbs(this.rootPath),
jsurl = sourcePath + '/third-party/video-js/video.js',
cssurl = sourcePath + '/third-party/video-js/video-js.min.css',
swfUrl = sourcePath + '/third-party/video-js/video-js.swf'
if (window.videojs) {
videojs.autoSetup()
} else {
utils.loadFile(document, {
id: 'video_css',
tag: 'link',
rel: 'stylesheet',
type: 'text/css',
href: cssurl
})
utils.loadFile(document, {
id: 'video_js',
src: jsurl,
tag: 'script',
type: 'text/javascript'
}, function () {
videojs.options.flash.swf = swfUrl
videojs.autoSetup()
})
}
}
})
})()