> 技术文档 > vue项目入门

vue项目入门


入门

1. 创建 Vue 项目

首先,确保你已经安装了 Node.jsVue CLI(如前面所提到的)。然后,你可以创建一个新的 Vue 项目:

vue create vue-crud-project

选择 Vue 3 和默认配置(或者根据需要自定义配置)。

2. 推荐的 Vue.js 项目目录结构

以下是一个常见的、适合中小型 Vue.js 项目的目录结构:

vue-crud-project/ ├── public/ # 存放静态资源 │ ├── index.html # 应用的 HTML 入口 ├── src/  # 源代码 │ ├── assets/ # 存放静态资源(如图片、字体等) │ ├── components/ # 存放 Vue 组件 │ ├── views/ # 存放页面视图组件 │ ├── router/ # 存放路由文件 │ ├── store/ # Vuex 状态管理(如果需要) │ ├── services/ # 存放 API 请求等业务逻辑 │ ├── App.vue # 根组件 │ ├── main.js # 项目入口文件 ├── node_modules/ # npm 安装的依赖包 ├── package.json  # 项目依赖、脚本等配置文件 ├── vue.config.js # Vue CLI 配置文件(如果需要) └── README.md  # 项目说明文件

推荐2

frontend/├── public/# 静态资源│ ├── index.html  # 入口 HTML 文件│ ├── favicon.ico  # 网站图标│ └── ...├── src/ # 核心代码│ ├── assets/  # 静态资源 (图片、字体等)│ │ └── styles/  # 样式文件 (如全局样式、变量等)│ │ └── variables.scss # Element UI 主题定制变量│ ├── components/  # 公共组件│ │ └── OrderDealTable.vue # 订单管理表格组件│ ├── pages/  # 页面文件│ │ └── OrderDealPage.vue # 订单管理主页面│ ├── router/  # 路由配置│ │ └── index.js # 路由入口文件│ ├── store/  # 状态管理 (Vuex)│ │ └── modules/│ │ └── orderDeal.js # 订单管理模块状态│ ├── utils/  # 工具函数│ │ ├── api.js  # Axios 请求封装│ │ └── enums.js # 枚举值管理│ ├── views/  # 视图│ │ └── OrderDealView.vue # 订单管理视图│ ├── App.vue  # 根组件│ ├── main.js  # 项目入口文件│ └── ...├── .env # 环境变量配置文件├── .gitignore  # Git 忽略文件├── package.json  # 项目依赖配置├── vue.config.js # Vue CLI 配置└── README.md  # 项目说明

3. 详细解释各个目录及文件

public/
  • 存放静态资源,例如 index.html,这个文件在构建时不会被修改。可以在此文件中配置一些公共资源或 </code> 标签等。</li> </ul> <h5><code>src/</code></h5> <ul> <li><code>assets/</code>:用于存放静态资源(如图片、CSS、字体等)。不需要处理过的文件放在这里。</li> <li><code>components/</code>:用于存放可复用的 Vue 组件。每个 Vue 组件通常包含三个部分:模板(HTML)、脚本(JS)、样式(CSS)。</li> <li><code>views/</code>:存放每个页面的组件(如 Home.vue、About.vue)。这些组件通常是视图级别的,包含较复杂的结构或逻辑。</li> <li><code>router/</code>:用于管理 Vue Router 配置。Vue Router 用于处理页面导航。</li> <li><code>store/</code>:存放 Vuex 相关代码。如果你使用了 Vuex 来管理应用的状态,它的文件会放在这里。</li> <li><code>services/</code>:用于存放与后端交互的 API 请求、业务逻辑处理等。</li> </ul> <h5><code>package.json</code></h5> <p>这是项目的核心配置文件,记录了项目的依赖、脚本、版本等信息。</p> <h5><code>main.js</code></h5> <p>这是 Vue 项目的入口文件,通常在这里引入 <code>App.vue</code>,并初始化 Vue 实例。</p> <h4>4. 项目组织实践</h4> <h5>4.1 创建组件</h5> <p>在 <code>src/components</code> 目录下,你可以创建一些常用的 Vue 组件。例如,创建一个表格组件 <code>Table.vue</code> 来显示订单交易数据:</p> <p><code>**src/components/Table.vue**</code></p> <pre><code class="prism language-vue"> <table border="1"> <thead> <tr> <th>订单</th> <th>代码</th> <th>买入时间</th> <th>买入总金额</th> <th>买入成交价格</th> <th>卖出时间</th> <th>卖出总金额</th> <th>卖出成交价格</th> <th>持仓时间</th> <th>盈亏百分比</th> <th>盈亏</th> <th>亏损原因</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td>{<!-- -->{ item.order }}</td> <td>{<!-- -->{ item.code }}</td> <td>{<!-- -->{ item.buyTime }}</td> <td>{<!-- -->{ item.buyAmount }}</td> <td>{<!-- -->{ item.buyPrice }}</td> <td>{<!-- -->{ item.sellTime }}</td> <td>{<!-- -->{ item.sellAmount }}</td> <td>{<!-- -->{ item.sellPrice }}</td> <td>{<!-- -->{ item.holdingTime }}</td> <td>{<!-- -->{ item.profitPercentage }}%</td> <td>{<!-- -->{ item.profit }}</td> <td>{<!-- -->{ item.lossReason }}</td> <td>{<!-- -->{ item.notes }}</td> </tr> </tbody> </table> export default { name: \"Table\", props: { records: Array } }; /* 样式根据需要自行调整 */</code></pre> <p>在上述代码中,<code>Table.vue</code> 是一个用于展示表格数据的组件,它接收一个 <code>records</code> 属性,用于显示订单交易记录。</p> <h5>4.2 路由配置</h5> <p>在 <code>src/router/index.js</code> 文件中配置 Vue Router,用来管理页面间的导航。</p> <p><code>**src/router/index.js**</code></p> <pre><code class="prism language-javascript"><span class="token keyword">import</span> Vue <span class="token keyword">from</span> <span class="token string">\'vue\'</span><span class="token keyword">import</span> Router <span class="token keyword">from</span> <span class="token string">\'vue-router\'</span><span class="token keyword">import</span> Home <span class="token keyword">from</span> <span class="token string">\'../views/Home.vue\'</span>Vue<span class="token punctuation">.</span><span class="token function">use</span><span class="token punctuation">(</span>Router<span class="token punctuation">)</span><span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token keyword">new</span> <span class="token class-name">Router</span><span class="token punctuation">(</span><span class="token punctuation">{<!-- --></span> routes<span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{<!-- --></span> path<span class="token operator">:</span> <span class="token string">\'/\'</span><span class="token punctuation">,</span> name<span class="token operator">:</span> <span class="token string">\'home\'</span><span class="token punctuation">,</span> component<span class="token operator">:</span> Home <span class="token punctuation">}</span> <span class="token punctuation">]</span><span class="token punctuation">}</span><span class="token punctuation">)</span></code></pre> <p>在 <code>src/views/Home.vue</code> 中,你可以使用你创建的 <code>Table</code> 组件来展示数据。</p> <h5>4.3 组织服务层</h5> <p>如果需要与后端进行 API 请求,可以创建一个 <code>src/services/api.js</code> 文件,集中管理所有 API 请求。</p> <p><code>**src/services/api.js**</code></p> <pre><code class="prism language-javascript"><span class="token keyword">import</span> axios <span class="token keyword">from</span> <span class="token string">\'axios\'</span><span class="token punctuation">;</span><span class="token keyword">const</span> api <span class="token operator">=</span> axios<span class="token punctuation">.</span><span class="token function">create</span><span class="token punctuation">(</span><span class="token punctuation">{<!-- --></span> baseURL<span class="token operator">:</span> <span class="token string">\'https://api.example.com\'</span><span class="token punctuation">,</span> <span class="token comment">// 替换为你的 API 基础 URL</span> timeout<span class="token operator">:</span> <span class="token number">5000</span><span class="token punctuation">,</span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token keyword">export</span> <span class="token keyword">const</span> <span class="token function-variable function">getRecords</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">return</span> api<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">\'/orders\'</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token punctuation">}</span><span class="token punctuation">;</span><span class="token keyword">export</span> <span class="token keyword">const</span> <span class="token function-variable function">addRecord</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">data</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">return</span> api<span class="token punctuation">.</span><span class="token function">post</span><span class="token punctuation">(</span><span class="token string">\'/orders\'</span><span class="token punctuation">,</span> data<span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token punctuation">}</span><span class="token punctuation">;</span><span class="token keyword">export</span> <span class="token keyword">const</span> <span class="token function-variable function">updateRecord</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">id<span class="token punctuation">,</span> data</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">return</span> api<span class="token punctuation">.</span><span class="token function">put</span><span class="token punctuation">(</span><span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">/orders/</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${<!-- --></span>id<span class="token interpolation-punctuation punctuation">}</span></span><span class="token template-punctuation string">`</span></span><span class="token punctuation">,</span> data<span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token punctuation">}</span><span class="token punctuation">;</span><span class="token keyword">export</span> <span class="token keyword">const</span> <span class="token function-variable function">deleteRecord</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">id</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">return</span> api<span class="token punctuation">.</span><span class="token function">delete</span><span class="token punctuation">(</span><span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">/orders/</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${<!-- --></span>id<span class="token interpolation-punctuation punctuation">}</span></span><span class="token template-punctuation string">`</span></span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token punctuation">}</span><span class="token punctuation">;</span></code></pre> <h4>5. 在 VS Code 中调试和运行</h4> <h5>5.1 启动开发服务器</h5> <p>在项目根目录下,运行以下命令启动开发服务器:</p> <pre><code class="prism language-bash"><span class="token function">npm</span> run serve</code></pre> <p>浏览器会自动打开,并且你可以访问 http://localhost:8080 查看你的 Vue 项目。</p> <h5>5.2 使用 VS Code 调试</h5> <p>你可以在 VS Code 中直接调试 Vue.js 项目。VS Code 支持 <strong>Chrome 调试</strong>,只需要安装 DebuggerforChrome插件 并按照文档进行设置。</p> <hr /> <h4>总结</h4> <ol> <li>在 <strong>VS Code</strong> 中开发 Vue.js 项目时,保持清晰的文件夹结构非常重要。推荐使用 <code>src/components</code> 和 <code>src/views</code> 来分离组件和页面,<code>src/services</code> 来管理 API 请求,<code>src/router</code> 来管理页面路由。</li> <li>使用 Vue CLI 创建项目并启动开发服务器。</li> <li>在开发过程中,可以使用 <strong>VS Code</strong> 的插件来提高效率,比如 <strong>Vetur</strong>(Vue.js 语法支持),<strong>ESLint</strong>(代码质量检查)等。</li> <li>定期使用 <code>npm run serve</code> 来启动和查看项目进展。</li> </ol> <p>这样,你就可以快速构建一个具有 CRUD 功能的 Vue.js 项目,并在 <strong>VS Code</strong> 中高效开发。</p> <h2>element-ui</h2> <p>要使用 <strong>Element UI</strong> 实现一个简单的 CRUD 页面并展示表格数据,首先,你需要确保 Vue 项目已经引入了 <strong>Element UI</strong> 库。接下来,我会为你展示如何使用 <strong>Element UI</strong> 来创建一个包含表格、增删改查功能的页面。</p> <h4>步骤 1: 创建 Vue 项目</h4> <p>如果你还没有创建 Vue 项目,首先使用 Vue CLI 创建一个新的 Vue 项目:</p> <pre><code class="prism language-bash">vue create vue-crud-project</code></pre> <p>然后选择 <strong>Vue 3</strong> 和默认配置。</p> <h4>步骤 2: 安装 Element UI</h4> <p>进入你的项目目录并安装 <strong>Element UI</strong> 库:</p> <pre><code class="prism language-bash"><span class="token builtin class-name">cd</span> vue-crud-project<span class="token function">npm</span> <span class="token function">install</span> element-plus --save<span class="token function">npm</span> <span class="token function">install</span> axios --save</code></pre> <h4>步骤 3: 在 <code>main.js</code> 中引入 Element UI</h4> <p>在 <code>src/main.js</code> 中引入 <strong>Element UI</strong> 和相关的样式:</p> <pre><code class="prism language-javascript"><span class="token keyword">import</span> <span class="token punctuation">{<!-- --></span> createApp <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">\'vue\'</span><span class="token keyword">import</span> App <span class="token keyword">from</span> <span class="token string">\'./App.vue\'</span><span class="token keyword">import</span> ElementPlus <span class="token keyword">from</span> <span class="token string">\'element-plus\'</span><span class="token keyword">import</span> <span class="token string">\'element-plus/dist/index.css\'</span><span class="token function">createApp</span><span class="token punctuation">(</span>App<span class="token punctuation">)</span> <span class="token punctuation">.</span><span class="token function">use</span><span class="token punctuation">(</span>ElementPlus<span class="token punctuation">)</span> <span class="token punctuation">.</span><span class="token function">mount</span><span class="token punctuation">(</span><span class="token string">\'#app\'</span><span class="token punctuation">)</span></code></pre> <h4>步骤 4: 创建表格组件和 CRUD 页面</h4> <p>接下来,我们在 <code>src/components</code> 目录下创建一个表格组件,并实现基本的 <strong>增删改查</strong>(CRUD)功能。</p> <h5>1. 创建 <code>Table.vue</code> 组件</h5> <p><code>**src/components/Table.vue**</code></p> <pre><code class="prism language-vue">import axios from \'axios\';export default { name: \'Table\', data() { return { records: [], // 用于存储从后端获取的数据 formData: { order: \'\', code: \'\', buyTime: \'\', buyAmount: \'\', buyPrice: \'\', sellTime: \'\', sellAmount: \'\', sellPrice: \'\', profit: \'\' }, dialogVisible: false, isEditMode: false, editIndex: null }; }, mounted() { this.fetchRecords(); // 页面加载时获取数据 }, methods: { // 获取所有记录 async fetchRecords() { try { const response = await axios.get(\'/api/records\'); this.records = response.data; } catch (error) { console.error(\'Error fetching records:\', error); } }, // 显示添加对话框 showAddDialog() { this.formData = { order: \'\', code: \'\', buyTime: \'\', buyAmount: \'\', buyPrice: \'\', sellTime: \'\', sellAmount: \'\', sellPrice: \'\', profit: \'\' }; this.isEditMode = false; this.dialogVisible = true; }, // 显示编辑对话框 showEditDialog(row) { this.formData = { ...row }; this.isEditMode = true; this.dialogVisible = true; this.editIndex = this.records.indexOf(row); }, // 提交表单(添加或编辑) async submitForm() { if (this.isEditMode) { // 编辑操作 try { await axios.put(`/api/records/${this.formData.id}`, this.formData); this.records[this.editIndex] = this.formData; // 更新本地数据 } catch (error) { console.error(\'Error editing record:\', error); } } else { // 添加操作 try { const response = await axios.post(\'/api/records\', this.formData); this.records.push(response.data); // 将新增记录推入本地数据 } catch (error) { console.error(\'Error adding record:\', error); } } this.dialogVisible = false; }, // 删除记录 async deleteRecord(row) { try { await axios.delete(`/api/records/${row.id}`); this.records = this.records.filter(record => record !== row); } catch (error) { console.error(\'Error deleting record:\', error); } } }};</code></pre> <h4>代码解释</h4> <ul> <li><strong>表格 (</strong><code>**el-table**</code><strong>)</strong>:用于展示记录,表格中有每一列的操作按钮(编辑和删除)。</li> <li><strong>操作按钮 (</strong><code>**el-button**</code><strong>)</strong>:用于触发添加、编辑、删除操作。</li> <li><strong>添加/编辑对话框 (</strong><code>**el-dialog**</code><strong>)</strong>:用于输入或编辑表单数据,表单字段是与表格数据一一对应的。</li> <li><code>**submitForm**</code>** 方法**:判断是进行添加操作还是编辑操作,根据不同的模式(<code>isEditMode</code>)来更新数据。</li> <li><code>**deleteRecord**</code>** 方法**:删除选中的记录。</li> </ul> <h4>步骤 5: 在 <code>App.vue</code> 中使用 <code>Table</code> 组件</h4> <pre><code class="prism language-vue"> <div id="app"> <Table /> </div> import Table from \'./components/Table.vue\'; export default { name: \'App\', components: { Table } }; /* 样式根据需要自行调整 */</code></pre> <h4>步骤 6: 运行项目</h4> <p>在项目根目录下运行开发服务器:</p> <pre><code class="prism language-bash"><span class="token function">npm</span> run serve</code></pre> <p>浏览器会自动打开,并且你可以访问 http://localhost:8080 查看你的 CRUD 页面。</p> <h4>总结</h4> <ol> <li>使用 <strong>Element UI</strong> 来构建一个表格,并实现增删改查功能。</li> <li>使用 <code>**el-table**</code> 显示数据,<code>**el-dialog**</code> 用于弹出添加/编辑表单。</li> <li>在表格的每一行提供 <strong>编辑</strong> 和 <strong>删除</strong> 按钮,方便进行数据操作。</li> </ol> <p>这个页面是一个简单的增删改查功能的实现,适用于你展示订单交易数据的需求。在实际开发中,你可以根据需求进一步拓展,比如与后端进行数据交互。</p> </div> <div class="clear"></div> <div class="article_tags"> <div class="tagcloud"> 网络标签:<a href="http://www.csdndoc.com/tag/wj" rel="tag">文件</a> <a href="http://www.csdndoc.com/tag/zj" rel="tag">组件</a> <a href="http://www.csdndoc.com/tag/xm" rel="tag">项目</a> </div> </div> </div> </div> <div> <ul class="post-navigation row"> <div class="post-previous twofifth"> 上一篇 <br> <a href="http://www.csdndoc.com/thread/1926.html" rel="prev">MCP 与传统集成方案深度对决:REST API、GraphQL、gRPC 全方位技术解析</a> </div> <div class="post-next twofifth"> 下一篇 <br> <a href="http://www.csdndoc.com/thread/1929.html" rel="next">Leetcode力扣解题记录--第21题(合并链表)</a> </div> </ul> </div> <div class="article_container row box article_related"> <div class="related"> <div class="newrelated"> <h2>相关问题</h2> <ul> <li><a href="http://www.pcgg.com.cn/cf/34918.html">cf怎么领铲子</a></li> <li><a href="http://www.pcgg.com.cn/aedfh/36563.html">信仰武器 艾尔登法环</a></li> <li><a href="http://www.pcgg.com.cn/lol/26011.html">lol螳螂能出ap吗</a></li> <li><a href="http://www.pcgg.com.cn/gpqq/11729.html">和平精英灵敏度设置分享码最新</a></li> <li><a href="http://www.pcgg.com.cn/xjzb/58431.html">星际争霸如何联机对打</a></li> <li><a href="http://www.pcgg.com.cn/gl/54236.html">密室逃脱7攻略第7关</a></li> <li><a href="http://www.pcgg.com.cn/lol/25316.html">英雄联盟可以投降吗</a></li> <li><a href="http://www.pcgg.com.cn/lol/27610.html">玩英雄联盟吃cpu还是显卡</a></li> <li><a href="http://www.pcgg.com.cn/cj/39052.html">冬天买什么皮草最好男士</a></li> <li><a href="http://www.pcgg.com.cn/lol/25025.html">英雄联盟怎么买账号</a></li> </ul> </div> </div> </div> <div class="clear"></div> <div id="comments_box"> </div> </div> <div id="sidebar"> <div id="sidebar-follow"> <div class="search box row"> <div class="search_site"> <form id="searchform" method="get" action="http://www.csdndoc.com/index.php"> <button type="submit" value="" id="searchsubmit" class="button"><i class="fasearch">☚</i></button> <label><input type="text" class="search-s" name="s" x-webkit-speech="" placeholder="请输入搜索内容"></label> </form></div></div> <div class="widget_text widget box row widget_custom_html"><h3>公告</h3><div class="textwidget custom-html-widget"><a target="_blank" href="http://www.5d.ink/deepseek/?d=DeepseekR1_local.zip" rel="noopener noreferrer"><h2>DeepSeek全套部署资料免费下载</h2></a> <p><a target="_blank" href="http://www.5d.ink/deepseek/?d=DeepseekR1_local.zip" rel="noopener noreferrer"><img src="http://css.5d.ink/img/deep.png" alt="DeepSeekR1本地部署部署资料免费下载"></a></p><br /><br /> <a target="_blank" href="http://www.5d.ink/freefonts/?d=FreeFontsdown.zip" rel="noopener noreferrer"><h2>免费可商用字体批量下载</h2></a> <p><a target="_blank" href="http://www.5d.ink/freefonts/?d=FreeFontsdown.zip" rel="noopener noreferrer"><img src="http://css.5d.ink/img/freefont.png" alt="免费可商用字体下载"></a></p></div></div> <div class="widget box row"> <div id="tab-title"> <div class="tab"> <ul id="tabnav"> <li class="selected">猜你想看的文章</li> </ul> </div> <div class="clear"></div> </div> <div id="tab-content"> <ul> <li><a href="http://www.pcgg.com.cn/gl/1092.html">原神周游壶灵什么时候刷新</a></li> <li><a href="http://www.pcgg.com.cn/lol/27248.html">lol国服rank排行榜怎么查</a></li> <li><a href="http://www.pcgg.com.cn/lol/17570.html">lol如何练好一个英雄</a></li> <li><a href="http://www.pcgg.com.cn/lol/25268.html">lol怎么直接加技能</a></li> <li><a href="http://www.pcgg.com.cn/cf/34860.html">cf用鼠标宏会封号吗</a></li> <li><a href="http://www.pcgg.com.cn/lol/30297.html">英雄联盟怎么操作新手</a></li> <li><a href="http://www.pcgg.com.cn/lol/30577.html">lol吸血鬼怎么连续w</a></li> <li><a href="http://www.pcgg.com.cn/gpqq/12019.html">和平精英灵敏度最新最稳分享码</a></li> <li><a href="http://www.pcgg.com.cn/gpqq/8765.html">手机怎么玩和平精英国际服(玩和平精英手机发热怎么解决)</a></li> <li><a href="http://www.pcgg.com.cn/gl/1558.html">原神鱼类刷新时间是什么时候</a></li> </ul> </div> </div> </div> </div> </div> </div> <div class="clear"></div> <div id="footer"> <div class="container"> <div class="twothird"> </div> </div> <div class="container"> <div class="twothird"> <div class="copyright"> <p> Copyright © 2012 - 2025 <a href="http://www.csdndoc.com/"><strong>程序员档案馆</strong></a> Powered by <a href="/lists">网站分类目录</a> | <a href="/top100.php" target="_blank">精选推荐文章</a> | <a href="/sitemap.xml" target="_blank">网站地图</a> | <a href="/post/" target="_blank">疑难解答</a> <a href="https://beian.miit.gov.cn/" rel="external">京ICP备05034492号</a> </p> <p>声明:本站内容来自互联网,如信息有错误可发邮件到f_fb#foxmail.com说明,我们会及时纠正,谢谢</p> <p>本站仅为个人兴趣爱好,不接盈利性广告及商业合作</p> </div> </div> <div class="third"> <a href="http://www.xiaoboy.cn" target="_blank">小男孩</a> </div> </div> </div> <!--gototop--> <div id="tbox"> <a id="home" href="http://www.csdndoc.com" title="返回首页"><i class="fa fa-gohome"></i></a> <a id="pinglun" href="#comments_box" title="前往评论"><i class="fa fa-commenting"></i></a> <a id="gotop" href="javascript:void(0)" title="返回顶部"><i class="fa fa-chevron-up"></i></a> </div> <script src="//css.5d.ink/body5.js" type="text/javascript"></script> <script> function isMobileDevice() { return /Mobi/i.test(navigator.userAgent) || /Android/i.test(navigator.userAgent) || /iPhone|iPad|iPod/i.test(navigator.userAgent) || /Windows Phone/i.test(navigator.userAgent); } // 加载对应的 JavaScript 文件 if (isMobileDevice()) { var script = document.createElement('script'); script.src = '//css.5d.ink/js/menu.js'; script.type = 'text/javascript'; document.getElementsByTagName('head')[0].appendChild(script); } </script> <script> $(document).ready(function() { $("#sidebar-follow").pin({ containerSelector: ".main-container", padding: {top:64}, minWidth: 768 }); $(".mainmenu").pin({ containerSelector: ".container", padding: {top:0} }); $(".swipebox").swipebox(); }); </script> </body></html>