From 9b55b510a461c6a7681be500540db4f3a405efdb Mon Sep 17 00:00:00 2001 From: 闫增涛 <1829501689@qq.com> Date: 星期二, 14 五月 2024 19:18:32 +0800 Subject: [PATCH] 分页 --- src/books/childHealth/view/index.vue | 131 +++++++++++++++++++++++++++++-------------- 1 files changed, 87 insertions(+), 44 deletions(-) diff --git a/src/books/childHealth/view/index.vue b/src/books/childHealth/view/index.vue index 916853c..a1e4711 100644 --- a/src/books/childHealth/view/index.vue +++ b/src/books/childHealth/view/index.vue @@ -1,5 +1,5 @@ <template> - <div class="temp-book" @mouseup="handleMouseUp"> + <div class="temp-book" @mouseup="handleMouseUp" @mousedown="handleMouseDown" @mousemove="handleMousemove"> <pageContent></pageContent> </div> </template> @@ -9,15 +9,19 @@ import { getPublicImage } from "@/assets/js/middleGround/tool"; import pageContent from "./content/index.vue"; export default { + name: "child-health", components: { pageContent, - examinations + examinations, }, data() { return { type: "option", idPathList: [], - cardList: [] + cardList: [], + isMouseDown: false, + showToolBox: false, + move: false, }; }, mounted() { @@ -32,10 +36,10 @@ productId: this.config.bookId, favoriteTypes: "FavoriteBookCity", itemFields: { - "SysType=": "CmsFolder" + "SysType=": "CmsFolder", }, coverSize: { - height: 300 + height: 300, }, fields: { seriesName: [], @@ -57,8 +61,8 @@ pdf: [], protectedEpub: [], probationPage: [], //pdf璇曡椤垫暟 - freeEpubPage: [] //epub璇曡鐧惧垎姣� - } + freeEpubPage: [], //epub璇曡鐧惧垎姣� + }, }; this.MG.store.getProductDetail(query).then((res) => { console.log("鍥句功淇℃伅", res.datas.cmsDatas[0].datas); @@ -85,12 +89,12 @@ isDownload: [], jsek_resourceBrief: [], jsek_link: [], - jsek_questionBank: [] + jsek_questionBank: [], }, pading: { start: 0, - size: 999 - } + size: 999, + }, }; this.MG.store .getProductDetail(query) @@ -124,8 +128,8 @@ cmsPath: data.productLinkPath, pading: { start: 0, - size: 999 - } + size: 999, + }, }; this.MG.store.getProductDetail(query).then((res) => { console.log("棰樼洰", res.datas.cmsDatas[0].datas); @@ -143,7 +147,7 @@ pathList.push({ path: pathitem.productLinkPath, catalogName: pathitem.name, - infoList: [] + infoList: [], }); this.$data.cardList = pathList; // 鑾峰彇棰樼洰 @@ -161,12 +165,12 @@ Embedded_QuestionBank_StemStyle: [], Embedded_QuestionBank_OptionStyle: [], Embedded_QuestionBank_KnowledgePoint: [], - Embedded_QuestionBank_Difficulty: [] + Embedded_QuestionBank_Difficulty: [], }, pading: { start: 0, - size: 999 - } + size: 999, + }, }; this.MG.store.getProductDetail(query).then((res) => { let oldList; @@ -176,7 +180,7 @@ (item) => item.path == pathitem.productLinkPath ).infoList; this.setData({ - submitStatus: true + submitStatus: true, }); } res.datas.cmsDatas[0].datas.forEach((item, index) => { @@ -216,7 +220,7 @@ isRight: oldObj ? oldObj.isRight : null, isComplete: oldObj ? oldObj.isComplete : false, isCollect: false, - isUnfold: "" // 鎺у埗瑙f瀽鐨勬姌鍙犻潰鏉挎槸鍚﹀睍寮� + isUnfold: "", // 鎺у埗瑙f瀽鐨勬姌鍙犻潰鏉挎槸鍚﹀睍寮� }; // 澶氶�夊拰濉┖绛旀鑲负鏁扮粍锛岃杞崲JSON鏍煎紡 if ( @@ -237,7 +241,7 @@ if (item == "input") { questionObj.stem[i] = { num: index, - data: "input" + data: "input", }; if (!oldObj) questionObj.userAnswer[index] = ""; index++; @@ -364,7 +368,6 @@ }); } }, - getParentWithClass(element, className) { while (element.parentElement) { element = element.parentElement; @@ -374,42 +377,82 @@ } }, handleMouseUp(e) { - const txt = window.getSelection()?.toString(); - const selection = window.getSelection(); - if (selection.type != "none") { - let node = selection.anchorNode.parentNode.parentNode.parentNode; - let nextHtml = node.firstChild.innerHTML; - let pageHtml = this.getParentWithClass( - selection.anchorNode, - "page-box" - ); - if (txt && node) { - const page = node.getAttribute("page"); - // 鐩戝惉閫変腑鏂囨湰浜嬩欢锛屽苟瑙﹀彂鐖跺眰鏂规硶 - if (this.$store.state.qiankun.windowSelection) + if (this.$data.move) { + const txt = window.getSelection()?.toString(); + const selection = window.getSelection(); + if (selection.type != "none") { + let node = selection.anchorNode.parentNode; + let pageHtml = this.getParentWithClass( + selection.anchorNode, + "page-box" + ); + let chapterDom = this.getParentWithClass( + selection.anchorNode, + "chapter" + ); + let chapterNum; + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + if (txt && pageHtml) { + this.$dsta.showToolBox = true; + const page = pageHtml.getAttribute("page"); console.log( { + chapterNum, txt, selection, node, page, x: e.x, - y: e.y + y: e.y, }, "sendData" ); - this.$store.state.qiankun.windowSelection({ - txt, - selection, - node, - page, - x: e.x, - y: e.y - }); + // 鐩戝惉閫変腑鏂囨湰浜嬩欢锛屽苟瑙﹀彂鐖跺眰鏂规硶 + console.log("绗簩澶勫垽鏂�", this.$store.state.qiankun); + if (this.$store.state.qiankun.windowSelection) { + this.$store.state.qiankun.windowSelection({ + txt, + selection, + node, + page, + x: e.x, + y: e.y, + }); + } + } + this.$data.isMouseDown = false; } } - } - } + this.$data.move = false + }, + + 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