123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863 |
- import sheetmanage from './sheetmanage';
- import server from './server';
- import {
- sheetselectlistitemHTML,
- sheetselectlistHTML,
- keycode,
- } from './constant';
- import { replaceHtml, mouseclickposition } from '../utils/util';
- import { getSheetIndex } from '../methods/get';
- import { isEditMode } from '../global/validate';
- import formula from '../global/formula';
- import cleargridelement from '../global/cleargridelement';
- import tooltip from '../global/tooltip';
- selectTextDom;
- import { selectTextDom } from '../global/cursorPos';
- import locale from '../locale/locale';
- import Store from '../store';
- import luckysheetConfigsetting from './luckysheetConfigsetting';
- import { pagerInit } from '../global/api';
- import method from '../global/method';
- //表格底部名称栏区域 相关事件(增、删、改、隐藏显示、颜色等等)
- let isInitialSheetConfig = false,
- luckysheetcurrentSheetitem = null,
- jfdbclicklagTimeout = null,
- oldSheetFileName = '';
- function showsheetconfigmenu() {
- if (!isInitialSheetConfig) {
- isInitialSheetConfig = true;
- const _locale = locale();
- let locale_toolbar = _locale.toolbar;
- $('#luckysheetsheetconfigcolorur').spectrum({
- showPalette: true,
- preferredFormat: 'hex',
- clickoutFiresChange: false,
- showInitial: true,
- showInput: true,
- flat: true,
- hideAfterPaletteSelect: false,
- showSelectionPalette: true,
- maxPaletteSize: 10,
- cancelText: _locale.sheetconfig.cancelText,
- chooseText: _locale.sheetconfig.chooseText,
- togglePaletteMoreText: locale_toolbar.toolMore,
- togglePaletteLessText: locale_toolbar.toolLess,
- clearText: locale_toolbar.clearText,
- noColorSelectedText: locale_toolbar.noColorSelectedText,
- palette: [
- [
- 'rgb(0, 0, 0)',
- 'rgb(67, 67, 67)',
- 'rgb(102, 102, 102)',
- 'rgb(204, 204, 204)',
- 'rgb(217, 217, 217)',
- 'rgb(255, 255, 255)',
- ],
- [
- 'rgb(152, 0, 0)',
- 'rgb(255, 0, 0)',
- 'rgb(255, 153, 0)',
- 'rgb(255, 255, 0)',
- 'rgb(0, 255, 0)',
- 'rgb(0, 255, 255)',
- 'rgb(74, 134, 232)',
- 'rgb(0, 0, 255)',
- 'rgb(153, 0, 255)',
- 'rgb(255, 0, 255)',
- ],
- [
- 'rgb(230, 184, 175)',
- 'rgb(244, 204, 204)',
- 'rgb(252, 229, 205)',
- 'rgb(255, 242, 204)',
- 'rgb(217, 234, 211)',
- 'rgb(208, 224, 227)',
- 'rgb(201, 218, 248)',
- 'rgb(207, 226, 243)',
- 'rgb(217, 210, 233)',
- 'rgb(234, 209, 220)',
- ],
- [
- 'rgb(221, 126, 107)',
- 'rgb(234, 153, 153)',
- 'rgb(249, 203, 156)',
- 'rgb(255, 229, 153)',
- 'rgb(182, 215, 168)',
- 'rgb(162, 196, 201)',
- 'rgb(164, 194, 244)',
- 'rgb(159, 197, 232)',
- 'rgb(180, 167, 214)',
- 'rgb(213, 166, 189)',
- ],
- [
- 'rgb(204, 65, 37)',
- 'rgb(224, 102, 102)',
- 'rgb(246, 178, 107)',
- 'rgb(255, 217, 102)',
- 'rgb(147, 196, 125)',
- 'rgb(118, 165, 175)',
- 'rgb(109, 158, 235)',
- 'rgb(111, 168, 220)',
- 'rgb(142, 124, 195)',
- 'rgb(194, 123, 160)',
- ],
- [
- 'rgb(166, 28, 0)',
- 'rgb(204, 0, 0)',
- 'rgb(230, 145, 56)',
- 'rgb(241, 194, 50)',
- 'rgb(106, 168, 79)',
- 'rgb(69, 129, 142)',
- 'rgb(60, 120, 216)',
- 'rgb(61, 133, 198)',
- 'rgb(103, 78, 167)',
- 'rgb(166, 77, 121)',
- ],
- [
- 'rgb(91, 15, 0)',
- 'rgb(102, 0, 0)',
- 'rgb(120, 63, 4)',
- 'rgb(127, 96, 0)',
- 'rgb(39, 78, 19)',
- 'rgb(12, 52, 61)',
- 'rgb(28, 69, 135)',
- 'rgb(7, 55, 99)',
- 'rgb(32, 18, 77)',
- 'rgb(76, 17, 48)',
- ],
- [
- '#c1232b',
- '#27727b',
- '#fcce10',
- '#e87c25',
- '#b5c334',
- '#fe8463',
- '#9bca63',
- '#fad860',
- '#f3a43b',
- '#60c0dd',
- '#d7504b',
- '#c6e579',
- '#f4e001',
- '#f0805a',
- '#26c0c0',
- '#c12e34',
- '#e6b600',
- '#0098d9',
- '#2b821d',
- '#005eaa',
- '#339ca8',
- '#cda819',
- '#32a487',
- '#3fb1e3',
- '#6be6c1',
- '#626c91',
- '#a0a7e6',
- '#c4ebad',
- '#96dee8',
- ],
- ],
- change: function(color) {
- let $input = $(this);
- if (color != null) {
- color = color.toHexString();
- } else {
- color = 'rgb(0, 0, 0)';
- }
- let oldcolor = null;
- if (
- luckysheetcurrentSheetitem.find('.luckysheet-sheets-item-color')
- .length > 0
- ) {
- oldcolor = luckysheetcurrentSheetitem
- .find('.luckysheet-sheets-item-color')
- .css('background-color');
- }
- luckysheetcurrentSheetitem
- .find('.luckysheet-sheets-item-color')
- .remove();
- luckysheetcurrentSheetitem.append(
- '<div class="luckysheet-sheets-item-color" style=" position: absolute; width: 100%; height: 3px; bottom: 0px; left: 0px; background-color: ' +
- color +
- ';"></div>'
- );
- let index = getSheetIndex(Store.currentSheetIndex);
- Store.luckysheetfile[index].color = color;
- server.saveParam('all', Store.currentSheetIndex, color, { k: 'color' });
- if (Store.clearjfundo) {
- let redo = {};
- redo['type'] = 'sheetColor';
- redo['sheetIndex'] = Store.currentSheetIndex;
- redo['oldcolor'] = oldcolor;
- redo['color'] = color;
- Store.jfundo.length = 0;
- Store.jfredo.push(redo);
- }
- },
- });
- $('#luckysheetsheetconfigcolorreset').click(function() {
- let oldcolor = null;
- if (
- luckysheetcurrentSheetitem.find('.luckysheet-sheets-item-color')
- .length > 0
- ) {
- oldcolor = luckysheetcurrentSheetitem
- .find('.luckysheet-sheets-item-color')
- .css('background-color');
- }
- luckysheetcurrentSheetitem.find('.luckysheet-sheets-item-color').remove();
- let index = getSheetIndex(Store.currentSheetIndex);
- Store.luckysheetfile[index].color = null;
- server.saveParam('all', Store.currentSheetIndex, null, { k: 'color' });
- if (Store.clearjfundo) {
- let redo = {};
- redo['type'] = 'sheetColor';
- redo['sheetIndex'] = Store.currentSheetIndex;
- redo['oldcolor'] = oldcolor;
- redo['color'] = null;
- Store.jfundo.length = 0;
- Store.jfredo.push(redo);
- }
- });
- }
- let index = getSheetIndex(Store.currentSheetIndex);
- if (
- Store.luckysheetfile[index].color != null &&
- Store.luckysheetfile[index].color.length > 0
- ) {
- $('#luckysheetsheetconfigcolorur').spectrum(
- 'set',
- Store.luckysheetfile[index].color
- );
- }
- $('#luckysheetsheetconfigcolorur')
- .parent()
- .find('span, div, button, input, a')
- .addClass('luckysheet-mousedown-cancel');
- // 如果全部按钮设置了隐藏,则不显示
- const config = luckysheetConfigsetting.sheetRightClickConfig;
- // if(!config.delete && !config.copy && !config.rename && !config.color && !config.hide && !config.move){
- if (Object.values(config).every((ele) => !ele)) {
- return;
- }
- setTimeout(function() {
- mouseclickposition(
- $('#luckysheet-rightclick-sheet-menu'),
- luckysheetcurrentSheetitem.offset().left +
- luckysheetcurrentSheetitem.width(),
- luckysheetcurrentSheetitem.offset().top - 18,
- 'leftbottom'
- );
- }, 1);
- }
- let luckysheetsheetrightclick = function($t, $cur, e) {
- clearTimeout(jfdbclicklagTimeout);
- if (
- $cur.hasClass('luckysheet-sheets-item-name') &&
- $cur.attr('contenteditable') == 'true'
- ) {
- return;
- }
- if (
- formula.rangestart ||
- formula.rangedrag_column_start ||
- formula.rangedrag_row_start ||
- formula.israngeseleciton()
- ) {
- setTimeout(function() {
- formula.setCaretPosition(
- formula.rangeSetValueTo.get(0),
- 0,
- formula.rangeSetValueTo.text().length
- );
- formula.createRangeHightlight();
- $('#luckysheet-input-box-index')
- .find('.luckysheet-input-box-index-sheettxt')
- .remove()
- .end()
- .prepend(
- "<span class='luckysheet-input-box-index-sheettxt'>" +
- sheetmanage.getSheetName(formula.rangetosheet) +
- '!</span>'
- )
- .show();
- $('#luckysheet-input-box-index').css({
- left: $('#luckysheet-input-box').css('left'),
- top: parseInt($('#luckysheet-input-box').css('top')) - 20 + 'px',
- 'z-index': $('#luckysheet-input-box').css('z-index'),
- });
- }, 1);
- } else {
- //保存正在编辑的单元格内容
- if (parseInt($('#luckysheet-input-box').css('top')) > 0) {
- formula.updatecell(
- Store.luckysheetCellUpdate[0],
- Store.luckysheetCellUpdate[1]
- );
- }
- $('#luckysheet-input-box').removeAttr('style');
- $(
- '#luckysheet-formula-functionrange .luckysheet-formula-functionrange-highlight'
- ).remove();
- }
- $('#luckysheet-sheet-area div.luckysheet-sheets-item').removeClass(
- 'luckysheet-sheets-item-active'
- );
- $t.addClass('luckysheet-sheets-item-active');
- cleargridelement(e);
- sheetmanage.changeSheet($t.data('index'));
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- if (
- $cur.hasClass('luckysheet-sheets-item-menu') ||
- $cur.hasClass('fa-sort-desc') ||
- e.which == '3'
- ) {
- luckysheetcurrentSheetitem = $cur.closest('.luckysheet-sheets-item');
- showsheetconfigmenu();
- }
- };
- export function initialSheetBar() {
- const _locale = locale();
- const locale_sheetconfig = _locale.sheetconfig;
- isInitialSheetConfig = false;
- $('#luckysheet-sheet-area')
- .on('mousedown', 'div.luckysheet-sheets-item', function(e) {
- if (isEditMode()) {
- // alert("非编辑模式下不允许该操作!");
- return;
- }
- let $t = $(this),
- $cur = $(e.target),
- $item = $cur.closest('.luckysheet-sheets-item');
- if (e.which == '3') {
- setTimeout(() => {
- luckysheetsheetrightclick($t, $cur, e);
- luckysheetcurrentSheetitem = $item;
- showsheetconfigmenu();
- return;
- }, 0);
- }
- if (
- $item.hasClass('luckysheet-sheets-item-active') &&
- $item.find('.luckysheet-sheets-item-name').attr('contenteditable') ==
- 'false'
- ) {
- jfdbclicklagTimeout = setTimeout(function() {
- Store.luckysheet_sheet_move_status = true;
- Store.luckysheet_sheet_move_data = {};
- Store.luckysheet_sheet_move_data.widthlist = [];
- $('#luckysheet-sheet-area div.luckysheet-sheets-item:visible').each(
- function(i) {
- if (i == 0) {
- Store.luckysheet_sheet_move_data.widthlist.push(
- parseInt($(this).outerWidth())
- );
- } else {
- Store.luckysheet_sheet_move_data.widthlist.push(
- parseInt($(this).outerWidth()) +
- Store.luckysheet_sheet_move_data.widthlist[i - 1]
- );
- }
- }
- );
- Store.luckysheet_sheet_move_data.curindex = $(
- '#luckysheet-sheet-area div.luckysheet-sheets-item'
- ).index($item);
- let x = e.pageX;
- Store.luckysheet_sheet_move_data.curleft = x - $item.offset().left;
- Store.luckysheet_sheet_move_data.pageX = x;
- Store.luckysheet_sheet_move_data.activeobject = $item;
- Store.luckysheet_sheet_move_data.cursorobject = $cur;
- let $itemclone = $item
- .clone()
- .css('visibility', 'hidden')
- .attr('id', 'luckysheet-sheets-item-clone');
- $item.after($itemclone);
- $item.css({
- position: 'absolute',
- opacity: 0.8,
- cursor: 'move',
- transition: 'initial',
- 'z-index': 10,
- });
- }, 200);
- }
- })
- .on('click', 'div.luckysheet-sheets-item', function(e) {
- if (isEditMode()) {
- // alert("非编辑模式下不允许该操作!");
- return;
- }
- let $t = $(this),
- $cur = $(e.target);
- luckysheetsheetrightclick($t, $cur, e);
- server.keepHighLightBox();
- });
- let luckysheetsheetnameeditor = function($t) {
- if (Store.allowEdit === false) {
- return;
- }
- $t.attr('contenteditable', 'true')
- .addClass('luckysheet-mousedown-cancel')
- .data('oldtxt', $t.text());
- setTimeout(function() {
- selectTextDom($t.get(0));
- }, 1);
- };
- $('#luckysheet-sheet-area').on(
- 'dblclick',
- 'span.luckysheet-sheets-item-name',
- function(e) {
- luckysheetsheetnameeditor($(this));
- }
- );
- let compositionFlag = true;
- $('#luckysheet-sheet-area').on(
- 'compositionstart',
- 'span.luckysheet-sheets-item-name',
- () => (compositionFlag = false)
- );
- $('#luckysheet-sheet-area').on(
- 'compositionend',
- 'span.luckysheet-sheets-item-name',
- () => (compositionFlag = true)
- );
- $('#luckysheet-sheet-area').on(
- 'input',
- 'span.luckysheet-sheets-item-name',
- function() {
- if (Store.allowEdit === false) {
- return;
- }
- if (Store.limitSheetNameLength === false) {
- return;
- }
- let maxLength = Store.defaultSheetNameMaxLength;
- if (maxLength === 0) {
- return;
- }
- setTimeout(() => {
- if (compositionFlag) {
- if ($(this).text().length >= maxLength) {
- /* 检查:值是否越界 */
- setTimeout(() => {
- $(this).text(
- $(this)
- .text()
- .substring(0, maxLength)
- );
- let range = window.getSelection();
- range.selectAllChildren(this);
- range.collapseToEnd();
- }, 0);
- }
- }
- }, 0);
- }
- );
- $('#luckysheet-sheet-area').on(
- 'blur',
- 'span.luckysheet-sheets-item-name',
- function(e) {
- if (Store.allowEdit === false) {
- return;
- }
- let $t = $(this);
- let txt = $t.text(),
- oldtxt = $t.data('oldtxt');
- if (0 === $(this).text().length) {
- tooltip.info('', locale_sheetconfig.sheetNamecannotIsEmptyError);
- $t.text(oldtxt).attr('contenteditable', 'false');
- return;
- }
- if (
- txt.length > 31 ||
- txt.charAt(0) == "'" ||
- txt.charAt(txt.length - 1) == "'" ||
- /[:\:\\\/?\?\*\[\]]+/.test(txt)
- ) {
- tooltip.info('', locale_sheetconfig.sheetNameSpecCharError);
- $t.text(oldtxt).attr('contenteditable', 'false');
- return;
- }
- let index = getSheetIndex(Store.currentSheetIndex);
- for (let i = 0; i < Store.luckysheetfile.length; i++) {
- if (index != i && Store.luckysheetfile[i].name == txt) {
- if (isEditMode()) {
- alert(locale_sheetconfig.tipNameRepeat);
- } else {
- tooltip.info('', locale_sheetconfig.tipNameRepeat);
- }
- $t.text(oldtxt).attr('contenteditable', 'false');
- return;
- }
- }
- sheetmanage.sheetArrowShowAndHide();
- Store.luckysheetfile[index].name = txt;
- server.saveParam('all', Store.currentSheetIndex, txt, { k: 'name' });
- $t.attr('contenteditable', 'false').removeClass(
- 'luckysheet-mousedown-cancel'
- );
- if (Store.clearjfundo) {
- let redo = {};
- redo['type'] = 'sheetName';
- redo['sheetIndex'] = Store.currentSheetIndex;
- redo['oldtxt'] = oldtxt;
- redo['txt'] = txt;
- Store.jfundo.length = 0;
- Store.jfredo.push(redo);
- }
- // 钩子: sheetEditNameAfter
- method.createHookFunction('sheetEditNameAfter', {
- i: Store.luckysheetfile[index].index,
- oldName: oldtxt,
- newName: txt,
- });
- }
- );
- $('#luckysheet-sheet-area').on(
- 'keydown',
- 'span.luckysheet-sheets-item-name',
- function(e) {
- if (Store.allowEdit === false) {
- return;
- }
- let kcode = e.keyCode;
- let $t = $(this);
- if (kcode == keycode.ENTER) {
- let index = getSheetIndex(Store.currentSheetIndex);
- oldSheetFileName = Store.luckysheetfile[index].name || oldSheetFileName;
- Store.luckysheetfile[index].name = $t.text();
- $t.attr('contenteditable', 'false');
- }
- }
- );
- $('#luckysheetsheetconfigrename').click(function() {
- var $name = luckysheetcurrentSheetitem.find(
- 'span.luckysheet-sheets-item-name'
- );
- // 钩子 sheetEditNameBefore
- if (
- !method.createHookFunction('sheetEditNameBefore', {
- i: luckysheetcurrentSheetitem.data('index'),
- name: $name.text(),
- })
- ) {
- return;
- }
- luckysheetsheetnameeditor(
- luckysheetcurrentSheetitem.find('span.luckysheet-sheets-item-name')
- );
- $('#luckysheet-input-box').removeAttr('style');
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- });
- $('#luckysheetsheetconfigshow').click(function() {
- $('#luckysheet-sheets-m').click();
- $('#luckysheet-input-box').removeAttr('style');
- $('#luckysheet-rightclick-sheet-menu').hide();
- });
- $('#luckysheetsheetconfigmoveleft').click(function() {
- if (luckysheetcurrentSheetitem.prevAll(':visible').length > 0) {
- luckysheetcurrentSheetitem.insertBefore(
- luckysheetcurrentSheetitem.prevAll(':visible').eq(0)
- );
- sheetmanage.reOrderAllSheet();
- }
- $('#luckysheet-input-box').removeAttr('style');
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- });
- $('#luckysheetsheetconfigmoveright').click(function() {
- if (luckysheetcurrentSheetitem.nextAll(':visible').length > 0) {
- luckysheetcurrentSheetitem.insertAfter(
- luckysheetcurrentSheetitem.nextAll(':visible').eq(0)
- );
- sheetmanage.reOrderAllSheet();
- }
- $('#luckysheet-input-box').removeAttr('style');
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- });
- $('#luckysheetsheetconfigdelete').click(function(e) {
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- if (
- $('#luckysheet-sheet-container-c .luckysheet-sheets-item:visible')
- .length <= 1
- ) {
- if (isEditMode()) {
- alert(locale_sheetconfig.noMoreSheet);
- } else {
- tooltip.info(locale_sheetconfig.noMoreSheet, '');
- }
- return;
- }
- let index = getSheetIndex(Store.currentSheetIndex);
- tooltip.confirm(
- locale_sheetconfig.confirmDelete +
- '【' +
- Store.luckysheetfile[index].name +
- '】?',
- "<span style='color:#9e9e9e;font-size:12px;'>" +
- locale_sheetconfig.redoDelete +
- '</span>',
- function() {
- sheetmanage.deleteSheet(luckysheetcurrentSheetitem.data('index'));
- },
- null
- );
- $('#luckysheet-input-box').removeAttr('style');
- });
- $('#luckysheetsheetconfigdeleteother').click(function(e) {
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- if (
- $('#luckysheet-sheet-container-c .luckysheet-sheets-item:visible')
- .length <= 1
- ) {
- if (isEditMode()) {
- alert(locale_sheetconfig.noMoreSheet);
- } else {
- tooltip.info(locale_sheetconfig.noMoreSheet, '');
- }
- return;
- }
- let index = getSheetIndex(Store.currentSheetIndex);
- tooltip.confirm(
- locale_sheetconfig.confirmDeleteOther +
- '【' +
- Store.luckysheetfile[index].name +
- '】?',
- "<span style='color:#9e9e9e;font-size:12px;'>" +
- locale_sheetconfig.redoDelete +
- '</span>',
- function() {
- sheetmanage.deleteOtherSheet(luckysheetcurrentSheetitem.data('index'));
- },
- null
- );
- $('#luckysheet-input-box').removeAttr('style');
- });
- $('#luckysheetsheetconfigcopy').click(function(e) {
- sheetmanage.copySheet(luckysheetcurrentSheetitem.data('index'), e);
- $('#luckysheet-input-box').removeAttr('style');
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- });
- $('#luckysheetsheetconfighide').click(function() {
- if (
- $('#luckysheet-sheet-area div.luckysheet-sheets-item:visible').length == 1
- ) {
- if (isEditMode()) {
- alert(locale_sheetconfig.noHide);
- } else {
- tooltip.info('', locale_sheetconfig.noHide);
- }
- return;
- }
- sheetmanage.setSheetHide(luckysheetcurrentSheetitem.data('index'));
- $('#luckysheet-input-box').removeAttr('style');
- $('#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu').hide();
- });
- $('#luckysheet-sheets-add').click(function(e) {
- //保存正在编辑的单元格内容
- if (parseInt($('#luckysheet-input-box').css('top')) > 0) {
- formula.updatecell(
- Store.luckysheetCellUpdate[0],
- Store.luckysheetCellUpdate[1]
- );
- }
- sheetmanage.addNewSheet(e);
- sheetmanage.locationSheet();
- $('#luckysheet-input-box').removeAttr('style');
- });
- let sheetscrollani = null,
- sheetscrollstart = 0,
- sheetscrollend = 0,
- sheetscrollstep = 150;
- $('#luckysheet-sheets-leftscroll').click(function() {
- let $c = $('#luckysheet-sheet-container-c');
- sheetscrollstart = $c.scrollLeft();
- sheetscrollend = $c.scrollLeft() - sheetscrollstep;
- if (sheetscrollend <= 0) {
- $('#luckysheet-sheet-container .docs-sheet-fade-left').hide();
- }
- $('#luckysheet-sheet-container .docs-sheet-fade-right').show();
- clearInterval(sheetscrollani);
- sheetscrollani = setInterval(function() {
- sheetscrollstart -= 4;
- $c.scrollLeft(sheetscrollstart);
- if (sheetscrollstart <= sheetscrollend) {
- clearInterval(sheetscrollani);
- }
- }, 1);
- });
- $('#luckysheet-sheets-rightscroll').click(function() {
- let $c = $('#luckysheet-sheet-container-c');
- sheetscrollstart = $c.scrollLeft();
- sheetscrollend = $c.scrollLeft() + sheetscrollstep;
- if (sheetscrollstart > 0) {
- $('#luckysheet-sheet-container .docs-sheet-fade-right').hide();
- }
- $('#luckysheet-sheet-container .docs-sheet-fade-left').show();
- clearInterval(sheetscrollani);
- sheetscrollani = setInterval(function() {
- sheetscrollstart += 4;
- $c.scrollLeft(sheetscrollstart);
- if (sheetscrollstart >= sheetscrollend) {
- clearInterval(sheetscrollani);
- }
- }, 1);
- });
- let initialOpenSheet = true;
- $('#luckysheet-sheets-m').click(function(e) {
- //保存正在编辑的单元格内容
- if (parseInt($('#luckysheet-input-box').css('top')) > 0) {
- formula.updatecell(
- Store.luckysheetCellUpdate[0],
- Store.luckysheetCellUpdate[1]
- );
- }
- $('#luckysheet-sheet-list').html('');
- let item = '';
- for (let i = 0; i < Store.luckysheetfile.length; i++) {
- let f = Store.luckysheetfile[i],
- icon = '',
- style = '';
- if (f['status'] == 1) {
- icon = '<i class="fa fa-check" aria-hidden="true"></i>';
- }
- if (f['hide'] == 1) {
- continue;
- icon = '<i class="fa fa-low-vision" aria-hidden="true"></i>';
- style += 'color:#BBBBBB;';
- }
- if (f['color'] != null && f['color'].length > 0) {
- style += 'border-right:4px solid ' + f['color'] + ';';
- }
- item += replaceHtml(sheetselectlistitemHTML, {
- index: f['index'],
- name: f['name'],
- icon: icon,
- style: style,
- });
- }
- if (initialOpenSheet) {
- $('#' + Store.container).append(
- replaceHtml(sheetselectlistHTML, { item: item })
- );
- $('#luckysheet-sheet-list').on(
- 'click',
- '.luckysheet-cols-menuitem',
- function(e) {
- if (isEditMode()) {
- // tooltip.info("提示", "图表编辑模式下不允许该操作!");
- alert(locale_sheetconfig.chartEditNoOpt);
- return;
- }
- let $item = $(this),
- index = $item.data('index');
- if ($item.data('index') != Store.currentSheetIndex) {
- sheetmanage.setSheetShow(index);
- sheetmanage.locationSheet();
- }
- server.keepHighLightBox();
- }
- );
- initialOpenSheet = false;
- } else {
- $('#luckysheet-sheet-list').html(item);
- }
- let $t = $('#luckysheet-sheet-list');
- let left = $(this).offset().left - $('#' + Store.container).offset().left;
- let bottom = $(this).height() + $('#luckysheet-sta-content').height() + 12;
- $t.css({ left: left + 'px', bottom: bottom + 'px' }).show();
- $('#luckysheet-input-box').removeAttr('style');
- });
- // 初始化分页器
- if (luckysheetConfigsetting.pager) {
- pagerInit(luckysheetConfigsetting.pager);
- }
- }
|