Browse Source

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

TIANYONG 1 week ago
parent
commit
c15573e081
1 changed files with 8 additions and 6 deletions
  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",