Browse Source

fix(input range bug): fix it

master
wbfsa 5 years ago
parent
commit
5412721675
  1. 7
      src/controllers/keyboard.js
  2. 27
      src/global/formula.js

7
src/controllers/keyboard.js

@ -856,8 +856,11 @@ export function keyboardInitial(){
formulaMoveEvent("right", ctrlKey, shiftKey,event);
}
else if (!((kcode >= 112 && kcode <= 123) || kcode <= 46 || kcode == 144 || kcode == 108 || event.ctrlKey || event.altKey || (event.shiftKey && (kcode == 37 || kcode == 38 || kcode == 39 || kcode == 40 || kcode == keycode.WIN || kcode == keycode.WIN_R || kcode == keycode.MENU))) || kcode == 8 || kcode == 32 || kcode == 46 || (event.ctrlKey && kcode == 86)) {
formula.functionInputHanddler($("#luckysheet-functionbox-cell"), $("#luckysheet-rich-text-editor"), kcode);
setCenterInputPosition(Store.luckysheetCellUpdate[0], Store.luckysheetCellUpdate[1], Store.flowdata);
if(event.target.id!="luckysheet-input-box" && event.target.id!="luckysheet-rich-text-editor"){
formula.functionInputHanddler($("#luckysheet-functionbox-cell"), $("#luckysheet-rich-text-editor"), kcode);
setCenterInputPosition(Store.luckysheetCellUpdate[0], Store.luckysheetCellUpdate[1], Store.flowdata);
}
}
}).keyup(function (e) {
let kcode = e.keyCode;

27
src/global/formula.js

@ -3238,7 +3238,7 @@ const luckysheetformula = {
let value = $editer.text(),
valuetxt = value;
if (value.length > 0 && !(value1txt.substr(0, 1) != "=" && value1.indexOf("span")>-1) && (kcode != 229 || value.length == 1)) {
if (value.length > 0 && value1txt.substr(0, 1) == "=" && (kcode != 229 || value.length == 1)) {
value = _this.functionHTMLGenerate(value);
value1 = _this.functionHTMLGenerate(value1txt);
@ -3266,10 +3266,31 @@ const luckysheetformula = {
}
$functionbox.html(value);
}
else if(value1txt.substr(0, 1) != "=" && value1.indexOf("span")>-1){
else if(value1txt.substr(0, 1) != "=" && (kcode != 229 || value.length == 1)){
//&& value1.indexOf("span")>-1
// $editer.html(value1);
$functionbox.html(value);
let w = window.getSelection();
if(w!=null && w.type!="None"){
let range = w.getRangeAt(0);
let c = range.startContainer;
if(c.id=="luckysheet-rich-text-editor" || $(c).closest("#luckysheet-rich-text-editor")){
$functionbox.html(value);
}
else if(c.id=="luckysheet-functionbox-cell" || $(c).closest("#luckysheet-functionbox-cell")){
if(value1.indexOf("span")>-1){
}
else{
$editer.html(value);
}
}
}
}
_this.rangestart = false;

Loading…
Cancel
Save