From 62e971bb894c05f5b01b7dd01cbe8d9c56da461c Mon Sep 17 00:00:00 2001 From: 闫增涛 <1829501689@qq.com> Date: 星期六, 11 五月 2024 18:23:30 +0800 Subject: [PATCH] 父子通信 --- src/main.js | 7 ++++--- src/books/childHealth/view/content/components/chapter005.vue | 3 +-- src/books/childHealth/view/index.vue | 30 ++++++++++++++++++++++++++++-- src/books/childHealth/view/content/components/chapter001.vue | 6 +++--- 4 files changed, 36 insertions(+), 10 deletions(-) diff --git a/src/books/childHealth/view/content/components/chapter001.vue b/src/books/childHealth/view/content/components/chapter001.vue index fe67daf..2fd4118 100644 --- a/src/books/childHealth/view/content/components/chapter001.vue +++ b/src/books/childHealth/view/content/components/chapter001.vue @@ -1,7 +1,7 @@ <template> <div class="chapter-one"> <!-- 1 --> - <div class="page-box padding-96"> + <div class="page-box padding-96" > <p class="center mb-80" id="a008"> <img class="img-a" @@ -304,7 +304,7 @@ </div> </div> <!-- 3 --> - <div class="page-box"> + <div class="page-box" page="3"> <oddHeaderVue :special="1" :num="3" /> <div class="padding-96"> <h5 id="e002">2.楠ㄦ煍闊э紝鏄撳彉褰�</h5> @@ -362,7 +362,7 @@ </div> </div> <!-- 4 --> - <div class="page-box"> + <div class="page-box" page="4"> <evenHeaderVue :num="4" /> <div class="padding-96"> <p class="lh2 t0 tl-ju"> diff --git a/src/books/childHealth/view/content/components/chapter005.vue b/src/books/childHealth/view/content/components/chapter005.vue index 9728d72..37eb8bb 100644 --- a/src/books/childHealth/view/content/components/chapter005.vue +++ b/src/books/childHealth/view/content/components/chapter005.vue @@ -1161,7 +1161,6 @@ </div> </div> <!-- 120 --> - <div class="page-box"> <even-header :num="120" /> <div class="padding-96"> @@ -1716,7 +1715,7 @@ <div class="padding-96"> <p class="t0">鍎跨楗绀间华鐨勫煿鍏伙紝閫氳繃楗瀵瑰効绔ヨ繘琛岀ぜ璨屻�佸瓭椤恒�佸嫟淇瓑鍩烘湰鍋氫汉涔嬮亾鐨勬暀鑲层��</p> </div> - </div> + </div> <h6 class="Conclusion-title2"> <img class="img-gn" alt="" src="../../../assets/images/icon/ycs.png" /> 浜戞祴璇� diff --git a/src/books/childHealth/view/index.vue b/src/books/childHealth/view/index.vue index 4ca6f0f..03fd85d 100644 --- a/src/books/childHealth/view/index.vue +++ b/src/books/childHealth/view/index.vue @@ -1,8 +1,7 @@ <template> - <div class="temp-book"> + <div class="temp-book" @mouseup="handleMouseUp"> <pageHeader></pageHeader> <pageContent></pageContent> - <!-- <examinations :questionList="cardList" :type="type"></examinations> --> </div> </template> @@ -368,6 +367,33 @@ }); } }, + + getParentWithClass(element, className) { + while (element.parentElement) { + element = element.parentElement; + if (element.classList.contains(className)) { + return element; + } + } + }, + handleMouseUp(e) { + const txt = window.getSelection()?.toString(); + const node = window.getSelection(); + let html = node.anchorNode.parentNode.parentNode.parentNode; + let nextHtml = html.firstChild.innerHTML; + let pageHtml = this.getParentWithClass(node.anchorNode,'page-box') + if (txt) { + console.log(pageHtml); + } + if (html) { + const page = html.getAttribute("page"); + console.log("page", page,this.$actions); + this.$actions.setGlobalState({ + aa:page + }) + + } + }, }, }; </script> diff --git a/src/main.js b/src/main.js index 1042e4d..ee43d47 100644 --- a/src/main.js +++ b/src/main.js @@ -29,13 +29,14 @@ let instance = null; -function render(props = {}) { - const { container } = props; +function render(actions = {}) { + // const { container } = props; instance = new Vue({ // router, + actions, store, render: (h) => h(App) - }).$mount(container ? container.querySelector("#app") : "#app"); + }).$mount(actions.container ? actions.container.querySelector("#app") : "#app"); } // 鐙珛杩愯鏃� -- Gitblit v1.9.1