Explorar o código

Search key highlight
搜索关键字高亮

star7th %!s(int64=6) %!d(string=hai) anos
pai
achega
7109764b3a

+ 8 - 0
web_src/src/components/common/Editormd.vue

@@ -33,6 +33,10 @@ export default {
       type:String,
       default: 'editor'
     },
+    keyword: {
+      type:String,
+      default: ''
+    },
     id: {
       type: String,
       default: 'editor-md'
@@ -91,6 +95,7 @@ export default {
 	      `${this.editorPath}/lib/underscore.min.js`,
 		    `${this.editorPath}/lib/sequence-diagram.min.js`,
 		    `${this.editorPath}/lib/jquery.flowchart.min.js`,
+        `${this.editorPath}/lib/jquery.mark.min.js`,
 	    ], () => {
 	       
 	      $s(`${this.editorPath}/editormd.js`, () => {
@@ -262,6 +267,9 @@ export default {
         $("#"+this.id+" pre").css("border","1px solid #e1e1e8") ;
         
         $("#"+this.id+" code").css("color","#d14");
+
+        //高亮关键字
+        if(this.keyword)$("#"+this.id).mark(this.keyword);
         
     },
 

+ 3 - 1
web_src/src/components/item/show/Index.vue

@@ -3,7 +3,7 @@
     <Header> </Header>
     
     <!-- 展示常规项目 -->
-    <ShowRegularItem :item_info="item_info" :search_item="search_item" v-if="item_info && item_info.item_type == 1 "> 
+    <ShowRegularItem :item_info="item_info" :search_item="search_item" :keyword="keyword" v-if="item_info && item_info.item_type == 1 "> 
 
     </ShowRegularItem>
     
@@ -26,6 +26,7 @@
     data() {
       return {
         item_info:'' ,
+        keyword:'',
       }
     },
   components:{
@@ -92,6 +93,7 @@
     },
     search_item(keyword){
       this.item_info = '';
+      this.keyword = keyword ;
       this.get_item_menu(keyword);
     }
   },

+ 4 - 3
web_src/src/components/item/show/show_regular_item/Index.vue

@@ -5,7 +5,7 @@
       <el-container>
 
         <el-aside class="el-aside" id="left-side">
-            <LeftMenu :get_page_content="get_page_content" :item_info="item_info" :search_item="search_item" v-if="item_info" ></LeftMenu>
+            <LeftMenu :get_page_content="get_page_content" :keyword="keyword" :item_info="item_info" :search_item="search_item" v-if="item_info" ></LeftMenu>
         </el-aside>
         
         <el-container class="right-side" id="right-side">
@@ -52,7 +52,7 @@
                   <i class="el-icon-upload"></i> 
                 </el-badge>
             </div>
-              <Editormd v-bind:content="content" type="html"  v-if="page_id" ></Editormd>
+              <Editormd v-bind:content="content" type="html" :keyword="keyword"  v-if="page_id" ></Editormd>
 
           </el-main>
 
@@ -108,7 +108,8 @@
   export default {
     props:{
       item_info:'',
-      search_item:''
+      search_item:'',
+      keyword:''
     },
     data() {
       return {

+ 2 - 2
web_src/src/components/item/show/show_regular_item/LeftMenu.vue

@@ -75,11 +75,11 @@
   props:{
     get_page_content:'',
     item_info:'',
-    search_item:''
+    search_item:'',
+    keyword:'',
   },
     data() {
       return {
-        keyword:'',
         openeds:[],
         menu:''
       }

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 8 - 0
web_src/static/editor.md/lib/jquery.mark.min.js


Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio