From cf4014b95b5aa3d077cad96f83809366b9879105 Mon Sep 17 00:00:00 2001 From: YM <479443481@qq.com> Date: 星期二, 14 五月 2024 19:17:54 +0800 Subject: [PATCH] Merge branch 'master' of http://182.92.203.7:2001/r/testbookLayout --- src/books/childHealth/view/index.vue | 48 +++++++++++++++++++++++++++++------------------- 1 files changed, 29 insertions(+), 19 deletions(-) diff --git a/src/books/childHealth/view/index.vue b/src/books/childHealth/view/index.vue index 3f1ec31..fd1f2d7 100644 --- a/src/books/childHealth/view/index.vue +++ b/src/books/childHealth/view/index.vue @@ -8,7 +8,7 @@ import examinations from "./components/examinations/index.vue"; import { getPublicImage } from "@/assets/js/middleGround/tool"; import pageContent from "./content/index.vue"; -import {mapState} from 'vuex' +import { mapState } from "vuex"; export default { name: "child-health", components: { @@ -20,6 +20,9 @@ type: "option", idPathList: [], cardList: [], + isMouseDown:false, + showToolBox:false, + move:false }; }, mounted() { @@ -432,26 +435,33 @@ } } }, - handleDom() { - const selection = window.getSelection(); - let textDom = this.getParentWithClass(selection.anchorNode, "page-box"); - for (let i = 0; i < this.$store.state.lineHeightList.length; i++) { - let item = this.$store.state.lineHeightList[i]; - let rReg = new RegExp(`${item.selectText}`, "ig"); - let text = textDom.innerHTML; - console.log(item.selectNode, "item.selectNode.innerHTML"); - let nodeHtml = item.selectNode; - let nHtml = ""; - nHtml = nodeHtml.replace( - rReg, - `<span style="background: ${item.color};padding: 2px;cursor: pointer">${item.selectText}</span>` - ); - console.log(nHtml); - let rHtml = ""; - rHtml = text.replace(nodeHtml, nHtml); - textDom.innerHTML = rHtml; + + handleMouseDown() { + this.$data.isMouseDown = true; + this.$data.showToolBox = false; + }, + handleMousemove() { + if (this.$data.isMouseDown) { + this.$data.move= true; } }, + + handleMouseUp(e) { + if (move.value) { + const txt = window.getSelection()?.toString(); + selectText.value = txt; + const node = window.getSelection(); + let html = node.anchorNode.parentNode.parentNode; + dialogToolData.chapter = html.firstChild.innerHTML; + if (txt) { + showToolBox.value = true; + dialogToolData.top = e.y; + dialogToolData.left = e.x; + } + isMouseDown.value = false; + } + move.value = false; + }, }, }; </script> -- Gitblit v1.9.1