浏览代码

Merge branch 'feature-tianyong-newVersion' into ktyq-test-new

TIANYONG 2 周之前
父节点
当前提交
c15573e081
共有 1 个文件被更改,包括 8 次插入6 次删除
  1. 8 6
      src/view/selection/index.tsx

+ 8 - 6
src/view/selection/index.tsx

@@ -55,7 +55,7 @@ const calcNoteData = () => {
 				const noteEle = document.querySelector(`#vf-${item.svgElement?.attrs?.id}`);
 
 				if (noteEle) {
-					const noteBbox = noteEle.getBoundingClientRect?.() || { x: 0, width: 0 };
+					let noteBbox = noteEle.getBoundingClientRect?.() || { x: 0, width: 0 };
 					if (state.musicRenderType !== EnumMusicRenderType.staff) {
 						noteItem.bbox = {
 							left: noteBbox.x - parentLeft - noteBbox.width / 4 + "px",
@@ -81,11 +81,13 @@ const calcNoteData = () => {
 					} else {
 						// 判断是否是滑音,滑音的宽度很大,会覆盖掉前面的音符区域,导致无法点击选中前一个音符,需要缩小滑音的点击区域
 						let vibratoReduceX = 0;
-						// if (noteEle?.querySelector('.vf-vibrato')) {
-						// 	vibratoReduceX = 50;
-						// } else {
-						// 	vibratoReduceX = 0;
-						// }
+						if (noteEle?.querySelector('.vf-vibrato') && noteEle?.querySelector(".vf-note")) {
+							// vibratoReduceX = 50;
+							// @ts-ignore
+							noteBbox = noteEle.querySelector(".vf-note")?.getBoundingClientRect?.() || { x: 0, width: 0 };
+						} else {
+							vibratoReduceX = 0;
+						}
 						const needTransY = -(staveBbox.height - customBgBox.height) / 2 + "px";
 						noteItem.bbox = {
 							left: noteBbox.x - parentLeft - noteBbox.width / 4 + vibratoReduceX + "px",