floating-icon.html 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <!-- 引入 Arco Design 的 CSS CDN -->
  7. <link rel="stylesheet" href="https://unpkg.com/@arco-design/web-vue@2.43.0/dist/css/arco.css" />
  8. <!-- 引入 Arco Design 的 JavaScript CDN -->
  9. <script src="https://unpkg.com/@arco-design/web-vue@2.43.0/dist/arco.min.js"></script>
  10. <style>
  11. body {
  12. background-color: transparent;
  13. margin: 0;
  14. padding: 0;
  15. overflow: hidden;
  16. }
  17. img {
  18. width: 100%;
  19. height: 100%;
  20. overflow: hidden;
  21. }
  22. #prompt {
  23. display: none;
  24. position: absolute;
  25. left: -80px;
  26. top: 50%;
  27. transform: translateY(-50%);
  28. }
  29. </style>
  30. </head>
  31. <body>
  32. <!-- 替换为你的图标路径 -->
  33. <img src="./tray-icon.png" alt="Floating Icon" id="icon" @click="openWindow()" />
  34. <div id="prompt">
  35. <!-- 使用 Arco Design 的按钮组件 -->
  36. 问一问
  37. </div>
  38. <script>
  39. const icon = document.getElementById('icon');
  40. const prompt = document.getElementById('prompt');
  41. icon.addEventListener('mouseenter', () => {
  42. prompt.style.display = 'block';
  43. });
  44. icon.addEventListener('mouseleave', () => {
  45. prompt.style.display = 'none';
  46. });
  47. function openWindow() {
  48. // 发送消息到主进程打开窗口
  49. window.electronAPI.openWindow();
  50. }
  51. </script>
  52. </body>
  53. </html>