From f02122892ee506d6955eba4aac8ddee53a5194fc Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Sun, 30 Mar 2025 11:21:02 +0800
Subject: [PATCH] feat: 整体交互调整

---
 src/layout/RSide.vue |   46 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/src/layout/RSide.vue b/src/layout/RSide.vue
index ad43f52..c32053b 100644
--- a/src/layout/RSide.vue
+++ b/src/layout/RSide.vue
@@ -1,6 +1,23 @@
 <template>
   <div class="ai-chat">
-    <img class="chat" src="@/assets/images/chat.png" alt="">
+
+    <el-popover
+      placement="bottom"
+      :visible="visible"
+      :width="200"
+      trigger="click"
+    >
+      <template #reference>
+        <div class="chat" id="chatID" v-drag:chatID  @mousedown="handleMouseDown"
+             @mouseup="handleMouseUp"/>
+      </template>
+      <div>
+        快和我对话吧
+        <el-input/>
+      </div>
+    </el-popover>
+
+
     <img class="chat-bottom" src="@/assets/images/chat-bottom.png" alt="">
   </div>
   <div class="r-side">
@@ -14,10 +31,25 @@
 </template>
 
 <script setup>
+import vDrag from '@/directive/drag'
 let logIndex = ref(3);
 const enterHover = (value) => {
   logIndex.value = value;
 }
+const visible = ref(false);
+let pressStart = 0;
+
+const handleMouseDown = () => {
+  pressStart = Date.now(); // 记录按下时间
+};
+
+const handleMouseUp = () => {
+  const pressDuration = Date.now() - pressStart; // 计算按下时长
+  if (pressDuration < 150) {
+    // 如果按下时间小于200ms,认为是点击
+    visible.value = !visible.value;
+  }
+};
 </script>
 
 <style scoped lang="scss">
@@ -31,10 +63,16 @@
     height: 68px;
     display: block;
   };
+
+
   .chat {
-    position: relative;
-    bottom: -50px;
+    position: fixed;
+    bottom: 330px;
     height: 124px;
+    width: 100px;
+    user-select: none;
+    z-index: 999;
+    background: url('@/assets/images/chat.png') no-repeat center / 100% 100%;
   }
 }
 .r-side {
@@ -79,4 +117,4 @@
   bottom: 122px;
 }
 
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.3