作者 xiaoqiu

更改了网站名称,优化了搜索点击

1 <template> 1 <template>
2 - <footer class="bg-gray-800 dark:bg-gray-950 text-white py-12 px-8 mt-auto transition-colors duration-300"> 2 + <footer
  3 + class="bg-gray-800 dark:bg-gray-950 text-white py-12 px-8 mt-auto transition-colors duration-300"
  4 + >
3 <div class="max-w-6xl mx-auto grid grid-cols-1 md:grid-cols-4 gap-8"> 5 <div class="max-w-6xl mx-auto grid grid-cols-1 md:grid-cols-4 gap-8">
4 <div> 6 <div>
5 <h3 class="text-xl font-bold mb-4"> 7 <h3 class="text-xl font-bold mb-4">
6 - {{ webSite.webname.slice(0, 7) }} 8 + {{ webSite.webname.split("|")[0] }}
7 </h3> 9 </h3>
8 <p class="text-gray-400"> 10 <p class="text-gray-400">
9 提供安全、快速的网址跳转服务,保护您的隐私安全。 11 提供安全、快速的网址跳转服务,保护您的隐私安全。
@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
15 {{ webSite.webname }} 15 {{ webSite.webname }}
16 </h1> 16 </h1>
17 <h2 class="md:text-xl text-base font-bold"> 17 <h2 class="md:text-xl text-base font-bold">
18 - {{ webSite.webname.slice(0, 7) }} 18 + {{ webSite.webname.split("|")[0] }}
19 </h2> 19 </h2>
20 </NuxtLink> 20 </NuxtLink>
21 21
@@ -29,7 +29,6 @@ @@ -29,7 +29,6 @@
29 </template> 29 </template>
30 30
31 <script setup> 31 <script setup>
32 -import { Promotion } from "@element-plus/icons-vue";  
33 const webSite = useState("webSite"); 32 const webSite = useState("webSite");
34 </script> 33 </script>
35 34
1 <template> 1 <template>
2 - <!-- From Uiverse.io by ZAKARIAE48CHELLE -->  
3 - <div class="input-wrapper">  
4 - <button class="icon"> 2 + <div class="input-wrapper" :class="{ active: isExpanded }">
  3 + <button class="icon" @click="toggleSearch" type="button">
5 <svg 4 <svg
6 width="25px" 5 width="25px"
7 height="25px" 6 height="25px"
@@ -25,29 +24,46 @@ @@ -25,29 +24,46 @@
25 </svg> 24 </svg>
26 </button> 25 </button>
27 <input 26 <input
  27 + ref="searchInput"
28 v-model="keyWord" 28 v-model="keyWord"
29 type="text" 29 type="text"
30 name="searchKeyword" 30 name="searchKeyword"
31 class="input" 31 class="input"
32 placeholder="输入应用名称回车查找" 32 placeholder="输入应用名称回车查找"
33 @keyup.enter="onSearch" 33 @keyup.enter="onSearch"
  34 + @blur="handleBlur"
34 /> 35 />
35 </div> 36 </div>
36 </template> 37 </template>
37 38
38 <script setup> 39 <script setup>
39 const keyWord = ref(""); 40 const keyWord = ref("");
  41 +const isExpanded = ref(false);
  42 +const searchInput = ref(null);
  43 +
  44 +function toggleSearch() {
  45 + isExpanded.value = !isExpanded.value;
  46 + if (isExpanded.value && searchInput.value) {
  47 + nextTick(() => {
  48 + searchInput.value.focus();
  49 + });
  50 + }
  51 +}
  52 +
  53 +function handleBlur() {
  54 + if (!keyWord.value) {
  55 + isExpanded.value = false;
  56 + }
  57 +}
  58 +
40 function onSearch() { 59 function onSearch() {
41 if (keyWord.value) { 60 if (keyWord.value) {
42 - // 跳转到搜索页面  
43 - // this.$router.push({ path: "/search", query: { q: keyword.value } });  
44 window.location.href = "/search?keyword=" + keyWord.value; 61 window.location.href = "/search?keyword=" + keyWord.value;
45 } 62 }
46 } 63 }
47 </script> 64 </script>
48 65
49 <style scoped> 66 <style scoped>
50 -/* From Uiverse.io by ZAKARIAE48CHELLE */  
51 .input-wrapper { 67 .input-wrapper {
52 display: flex; 68 display: flex;
53 align-items: center; 69 align-items: center;
@@ -72,8 +88,9 @@ function onSearch() { @@ -72,8 +88,9 @@ function onSearch() {
72 88
73 .input::placeholder, 89 .input::placeholder,
74 .input { 90 .input {
75 - font-family: "Trebuchet MS", "Lucida Sans Unicode", "Lucida Grande",  
76 - "Lucida Sans", Arial, sans-serif; 91 + font-family:
  92 + "Trebuchet MS", "Lucida Sans Unicode", "Lucida Grande", "Lucida Sans",
  93 + Arial, sans-serif;
77 font-size: 17px; 94 font-size: 17px;
78 } 95 }
79 96
@@ -93,13 +110,12 @@ function onSearch() { @@ -93,13 +110,12 @@ function onSearch() {
93 outline: none; 110 outline: none;
94 border-style: none; 111 border-style: none;
95 border-radius: 50%; 112 border-radius: 50%;
96 - pointer-events: painted;  
97 background-color: transparent; 113 background-color: transparent;
98 transition: 0.2s linear; 114 transition: 0.2s linear;
  115 + z-index: 10;
99 } 116 }
100 117
101 -.icon:focus ~ .input,  
102 -.input:focus { 118 +.input-wrapper.active .input {
103 box-shadow: none; 119 box-shadow: none;
104 width: 250px; 120 width: 250px;
105 border-radius: 0px; 121 border-radius: 0px;
@@ -108,29 +124,28 @@ function onSearch() { @@ -108,29 +124,28 @@ function onSearch() {
108 transition: all 500ms cubic-bezier(0, 0.11, 0.35, 2); 124 transition: all 500ms cubic-bezier(0, 0.11, 0.35, 2);
109 } 125 }
110 126
111 -/* 当最大宽度为768pxs时 */  
112 @media (max-width: 768px) { 127 @media (max-width: 768px) {
113 .input-wrapper { 128 .input-wrapper {
114 width: 200px; 129 width: 200px;
115 gap: 10px; 130 gap: 10px;
116 } 131 }
117 .icon { 132 .icon {
118 - width: 35px;  
119 - height: 35px; 133 + width: 44px;
  134 + height: 44px;
120 } 135 }
121 .input { 136 .input {
122 - width: 35px;  
123 - height: 35px;  
124 - padding-right: 35px; 137 + width: 44px;
  138 + height: 44px;
  139 + padding-right: 44px;
125 } 140 }
126 .input::placeholder, 141 .input::placeholder,
127 .input { 142 .input {
128 - font-family: "Trebuchet MS", "Lucida Sans Unicode", "Lucida Grande",  
129 - "Lucida Sans", Arial, sans-serif; 143 + font-family:
  144 + "Trebuchet MS", "Lucida Sans Unicode", "Lucida Grande", "Lucida Sans",
  145 + Arial, sans-serif;
130 font-size: 14px; 146 font-size: 14px;
131 } 147 }
132 - .icon:focus ~ .input,  
133 - .input:focus { 148 + .input-wrapper.active .input {
134 box-shadow: none; 149 box-shadow: none;
135 width: 180px; 150 width: 180px;
136 border-radius: 0px; 151 border-radius: 0px;
@@ -67,8 +67,8 @@ export default defineNuxtConfig({ @@ -67,8 +67,8 @@ export default defineNuxtConfig({
67 ], 67 ],
68 app: { 68 app: {
69 head: { 69 head: {
70 - title: 'Annie网站 - 优质 AI 工具集合、AI 资源网站、AI 导航平台',  
71 - titleTemplate: '%s | Annie网站', 70 + title: 'AI工具盒 - 优质 AI 工具集合、AI 资源网站、AI 导航平台',
  71 + titleTemplate: '%s | AI工具盒',
72 htmlAttrs: { 72 htmlAttrs: {
73 lang: 'zh-CN' 73 lang: 'zh-CN'
74 }, 74 },
@@ -78,18 +78,18 @@ export default defineNuxtConfig({ @@ -78,18 +78,18 @@ export default defineNuxtConfig({
78 { name: "force-rendering", content: "webkit"}, 78 { name: "force-rendering", content: "webkit"},
79 { "http-equiv":"X-UA-Compatible", content:"IE=edge, chrome=1" }, 79 { "http-equiv":"X-UA-Compatible", content:"IE=edge, chrome=1" },
80 { name: 'viewport', content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" }, 80 { name: 'viewport', content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" },
81 - { name: 'description', content: 'Annie网站是专业的AI工具导航平台,汇集全网优质AI工具,包含AI写作、AI绘画、AI视频、AI对话、AI代码、AI设计、AI办公等各类AI资源,让你快速找到好用的AI工具。' }, 81 + { name: 'description', content: 'AI工具盒是专业的AI工具导航平台,汇集全网优质AI工具,包含AI写作、AI绘画、AI视频、AI对话、AI代码、AI设计、AI办公等各类AI资源,让你快速找到好用的AI工具。' },
82 { name: 'keywords', content: 'AI工具,AI导航,AI资源,AI写作,AI绘画,AI视频,AI对话,ChatGPT,AI代码,AI设计,人工智能工具' }, 82 { name: 'keywords', content: 'AI工具,AI导航,AI资源,AI写作,AI绘画,AI视频,AI对话,ChatGPT,AI代码,AI设计,人工智能工具' },
83 - { name: 'author', content: 'Annie网站' }, 83 + { name: 'author', content: 'AI工具盒' },
84 { name:'robots', content:'index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1'}, 84 { name:'robots', content:'index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1'},
85 { name: 'googlebot', content: 'index, follow' }, 85 { name: 'googlebot', content: 'index, follow' },
86 { name: 'format-detection', content: 'telephone=no' }, 86 { name: 'format-detection', content: 'telephone=no' },
87 { name: 'referrer', content: 'origin-when-cross-origin' }, 87 { name: 'referrer', content: 'origin-when-cross-origin' },
88 { property: 'og:type', content: 'website' }, 88 { property: 'og:type', content: 'website' },
89 - { property: 'og:site_name', content: 'Annie网站' }, 89 + { property: 'og:site_name', content: 'AI工具盒' },
90 { property: 'og:locale', content: 'zh_CN' }, 90 { property: 'og:locale', content: 'zh_CN' },
91 { property: 'twitter:card', content: 'summary_large_image' }, 91 { property: 'twitter:card', content: 'summary_large_image' },
92 - { property: 'twitter:site', content: '@Annie网站' } 92 + { property: 'twitter:site', content: '@AI工具盒' }
93 ], 93 ],
94 link: [ 94 link: [
95 { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }, 95 { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
@@ -61,7 +61,7 @@ useHead({ @@ -61,7 +61,7 @@ useHead({
61 { property: "og:locale", content: "zh_CN" }, 61 { property: "og:locale", content: "zh_CN" },
62 { 62 {
63 property: "og:title", 63 property: "og:title",
64 - content: "Annie网站 - 优质 AI 工具集合、AI 资源网站、AI 导航平台", 64 + content: "AI工具盒 - 优质 AI 工具集合、AI 资源网站、AI 导航平台",
65 }, 65 },
66 { 66 {
67 property: "og:description", 67 property: "og:description",
@@ -69,12 +69,12 @@ useHead({ @@ -69,12 +69,12 @@ useHead({
69 "专业 AI 工具导航网站,汇集全网优质 AI 工具,包含 AI 写作、AI 绘画、AI 视频、AI 对话、AI 代码、AI 设计、AI 办公等各类 AI 资源,让你快速找到好用的 AI 工具。", 69 "专业 AI 工具导航网站,汇集全网优质 AI 工具,包含 AI 写作、AI 绘画、AI 视频、AI 对话、AI 代码、AI 设计、AI 办公等各类 AI 资源,让你快速找到好用的 AI 工具。",
70 }, 70 },
71 { property: "og:url", content: "https://aiboxgo.com/" }, 71 { property: "og:url", content: "https://aiboxgo.com/" },
72 - { property: "og:site_name", content: "Annie网站" }, 72 + { property: "og:site_name", content: "AI工具盒" },
73 { property: "og:type", content: "website" }, 73 { property: "og:type", content: "website" },
74 { property: "twitter:card", content: "summary_large_image" }, 74 { property: "twitter:card", content: "summary_large_image" },
75 { 75 {
76 property: "twitter:title", 76 property: "twitter:title",
77 - content: "Annie网站 - 优质 AI 工具集合、AI 资源网站、AI 导航平台", 77 + content: "AI工具盒 - 优质 AI 工具集合、AI 资源网站、AI 导航平台",
78 }, 78 },
79 { 79 {
80 property: "twitter:description", 80 property: "twitter:description",
不能预览此文件类型