沃梦达 / IT编程 / 前端开发 / 正文

原生javascript实现简单的datagrid数据表格

请看下面的攻略:

请看下面的攻略:

一、什么是DataGrid数据表格

DataGrid数据表格是Web应用程序中常见的一种显示和编辑数据的方式。它通常由多个数据列和若干行组成,每一个单元格可以编辑文本、选项、日期等不同类型的数据。

二、实现DataGrid数据表格的基本思路

我们可以借助HTML的<table>标签来实现数据表格的显示和基本布局,然后用原生Javascript来实现数据的加载、筛选、排序和分页等功能。

1. 加载数据

我们可以通过Ajax从服务端获取数据,或者直接使用已有的静态数据,然后将数据填充到表格的每一行中。具体实现可以采用如下的步骤:

  • 创建一个<table>标签,定义好表格的样式和布局;
  • 创建一个空的<tbody>标签,用于后续动态添加行;
  • 使用Ajax或者其他方式获取数据;
  • 遍历数据数组,创建新的行和单元格,并填充数据;
  • 将新行添加到<tbody>标签中。

示例代码:

var data = [
  {name: '张三', age: 25, gender: '男', address: '北京'},
  {name: '李四', age: 30, gender: '男', address: '上海'},
  {name: '王五', age: 28, gender: '女', address: '广州'}
];

var tbody = document.querySelector('#myTable tbody');
for (var i = 0; i < data.length; i++) {
  var tr = document.createElement('tr');
  tr.innerHTML = '<td>' + data[i].name + '</td>' +
                 '<td>' + data[i].age + '</td>' +
                 '<td>' + data[i].gender + '</td>' +
                 '<td>' + data[i].address + '</td>';
  tbody.appendChild(tr);
}

2. 筛选数据

我们可以通过用户输入关键字或者选择某一列排序方式来实现数据的筛选。具体实现可以采用如下的步骤:

  • 创建一个输入框或者下拉菜单,用于用户输入筛选条件;
  • 监听输入框或者下拉菜单的inputchange事件,根据用户输入的条件动态过滤行;
  • 在过滤前需要保存原始数据,以便还原数据。

示例代码:

var originData = [
  {name: '张三', age: 25, gender: '男', address: '北京'},
  {name: '李四', age: 30, gender: '男', address: '上海'},
  {name: '王五', age: 28, gender: '女', address: '广州'}
];

var data = originData;

var input = document.querySelector('#filterInput');
input.addEventListener('input', function() {
  var keyword = input.value.trim().toLowerCase();
  data = originData.filter(function(item) {
    return item.name.toLowerCase().indexOf(keyword) >= 0 ||
           item.address.toLowerCase().indexOf(keyword) >= 0;
  });
  renderTable();
});

function renderTable() {
  var tbody = document.querySelector('#myTable tbody');
  tbody.innerHTML = '';
  for (var i = 0; i < data.length; i++) {
    var tr = document.createElement('tr');
    tr.innerHTML = '<td>' + data[i].name + '</td>' +
                   '<td>' + data[i].age + '</td>' +
                   '<td>' + data[i].gender + '</td>' +
                   '<td>' + data[i].address + '</td>';
    tbody.appendChild(tr);
  }
}

3. 排序数据

我们可以通过用户点击表格头部来实现数据的排序。具体实现可以采用如下的步骤:

  • 为每一列的表头添加一个点击事件监听器;
  • 监听器中根据当前列的数据值和排序方式(升序/降序)对表格行进行排序;
  • 排序前需要保存原始数据,以便还原数据。

示例代码:

var originData = [
  {name: '张三', age: 25, gender: '男', address: '北京'},
  {name: '李四', age: 30, gender: '男', address: '上海'},
  {name: '王五', age: 28, gender: '女', address: '广州'}
];

var data = originData;
var sortBy = 'name'; // 默认按照姓名排序
var sortOrder = 'asc'; // 默认升序排列

var ths = document.querySelectorAll('#myTable th');
for (var i = 0; i < ths.length; i++) {
  ths[i].addEventListener('click', function() {
    var key = this.dataset.key;
    if (sortBy === key) {
      sortOrder = sortOrder === 'asc' ? 'desc' : 'asc';
    } else {
      sortBy = key;
      sortOrder = 'asc';
    }
    sortTable();
    renderTable();
  });
}

function sortTable() {
  var compare;
  if (sortOrder === 'asc') {
    compare = function(a, b) {
      if (typeof a[sortBy] === 'number' && typeof b[sortBy] === 'number') {
        return a[sortBy] - b[sortBy];
      } else {
        return a[sortBy].toString().localeCompare(b[sortBy].toString());
      }
    };
  } else {
    compare = function(a, b) {
      if (typeof a[sortBy] === 'number' && typeof b[sortBy] === 'number') {
        return b[sortBy] - a[sortBy];
      } else {
        return b[sortBy].toString().localeCompare(a[sortBy].toString());
      }
    };
  }
  data = data.sort(compare);
}

function renderTable() {
  var tbody = document.querySelector('#myTable tbody');
  tbody.innerHTML = '';
  for (var i = 0; i < data.length; i++) {
    var tr = document.createElement('tr');
    tr.innerHTML = '<td>' + data[i].name + '</td>' +
                   '<td>' + data[i].age + '</td>' +
                   '<td>' + data[i].gender + '</td>' +
                   '<td>' + data[i].address + '</td>';
    tbody.appendChild(tr);
  }
}

4. 分页数据

如果数据量很大,我们可以通过分页来提高数据的显示效率和用户体验。具体实现可以采用如下的步骤:

  • 设置每页显示的数据条数和当前页码;
  • 根据当前页码和每页显示的数据条数计算出需要显示的数据范围;
  • 显示当前页的数据并更新页码和页码按钮状态。

示例代码:

var originData = [
  {name: '张三', age: 25, gender: '男', address: '北京'},
  {name: '李四', age: 30, gender: '男', address: '上海'},
  {name: '王五', age: 28, gender: '女', address: '广州'},
  {name: '赵六', age: 33, gender: '男', address: '深圳'},
  {name: '钱七', age: 27, gender: '女', address: '西安'},
  {name: '孙九', age: 31, gender: '男', address: '武汉'},
  // ... 省略部分数据
  {name: '吴十', age: 26, gender: '女', address: '天津'}
];

var data = originData;
var perPage = 5; // 每页显示5条数据
var currentPage = 1; // 当前第1页

var inputPage = document.querySelector('#inputPage');
var btnPrev = document.querySelector('#btnPrev');
var btnNext = document.querySelector('#btnNext');

inputPage.addEventListener('input', function() {
  var num = parseInt(inputPage.value);
  if (num >= 1 && num <= getTotalPage()) {
    currentPage = num;
    renderTable();
  }
});

btnPrev.addEventListener('click', function() {
  if (currentPage > 1) {
    currentPage--;
    renderTable();
  }
});

btnNext.addEventListener('click', function() {
  if (currentPage < getTotalPage()) {
    currentPage++;
    renderTable();
  }
});

function getTotalPage() {
  return Math.ceil(data.length / perPage);
}

function getPageData() {
  var start = (currentPage - 1) * perPage;
  var end = Math.min(start + perPage, data.length);
  return data.slice(start, end);
}

function renderTable() {
  var tbody = document.querySelector('#myTable tbody');
  tbody.innerHTML = '';
  var pageData = getPageData();
  for (var i = 0; i < pageData.length; i++) {
    var tr = document.createElement('tr');
    tr.innerHTML = '<td>' + pageData[i].name + '</td>' +
                   '<td>' + pageData[i].age + '</td>' +
                   '<td>' + pageData[i].gender + '</td>' +
                   '<td>' + pageData[i].address + '</td>';
    tbody.appendChild(tr);
  }
  inputPage.value = currentPage;
  btnPrev.disabled = currentPage === 1;
  btnNext.disabled = currentPage === getTotalPage();
}

三、实现一个简单的DataGrid数据表格

综合以上思路,我们可以实现一个简单的DataGrid数据表格。具体代码见下:

```html





DataGrid数据表格示例</p> <style> table { border-collapse: collapse; margin-bottom: 20px; } thead { background-color: #eee; } th { padding: 5px; border: 1px solid #ccc; cursor: pointer; user-select: none; } th:hover { background-color: #ddd; } th[data-key]::after { margin-left: 5px; content: '\25b2'; /* 上箭头 */ } th[data-key][data-order="desc"]::after { content: '\25bc'; /* 下箭头 */ } td { padding: 5px; border: 1px solid #ccc; } tr:nth-child(even) { background-color: #f5f5f5; } input[type="text"] { font-size: 14px; padding: 3px 5px; border-radius: 3px; border: 1px solid #ccc; width: 150px; } .pager { display: flex; align-items: center; justify-content: center; } .pager input[type="text"] { width: 50px; text-align: right; } .pager button { font-size: 14px; padding: 3px 8px; margin: 0 5px; border-radius: 3px; border: none; background-color: #ccc; cursor: pointer; transition: background-color 0.2s ease; } .pager button:hover { background-color: #bbb; } .pager button:disabled { background-color: #eee; cursor: not-allowed; } </style> <p><br /><body></p> <div> <label for="filterInput">关键字:</label><br /> <input type="text" id="filterInput"> </div> <table id="myTable"> <thead> <tr> <th data-key="name">姓名</th> <th data-key="age">年龄</th> <th data-key="gender">性别</th> <th data-key="address">地址</th> </tr> </thead> <tbody></tbody> </table> <div class="pager"> <button id="btnPrev">上一页</button><br /> <input type="text" id="inputPage" value="1"><br /> <span> / </span><br /> <span id="totalPage"></span><br /> <button id="btnNext">下一页</button> </div> <p> <script><br /> // 加载数据<br /> var originData = [<br /> {name: '张三', age: 25, gender: '男', address: '北京'},<br /> {name: '李四', age: 30, gender: '男', address: '上海'},<br /> {name: '王五', age: 28, gender: '女', address: '广州'},<br /> {name: '赵六', age: 33, gender: '男', address: '深圳'},<br /> {name: '钱七', age: 27, gender: '女', address: '西安'},<br /> {name: '孙九', age: 31, gender: '男', address: '武汉'},<br /> {name: '周十', age: 29, gender: '女', address: '长沙'},<br /> {name: '吴十一', age: 26, gender: '男', address: '重庆'},<br /> {name: '郑十二', age: 32, gender: '女', address: '杭州'}<br /> // ... 省略部分数据<br /> ];<br /> var data = originData;</p> <p> var tbody = document.querySelector('#myTable tbody');<br /> for (var i = 0; i < data.length; i++) { var tr = document.createElement('tr'); tr.innerHTML = '<td>' + data[i].name + '<p>' +<br /> '</p> <td>' + data[i].age + '</td> <p>' +<br /> '</p> <td>' + data[i].gender + '</td> <p>' +<br /> '</p> <td>' + data[i].address + '</td> <p>';<br /> tbody.appendChild(tr);<br /> }</p> <p> // 筛选数据<br /> var filterInput = document.querySelector('#filterInput');<br /> filterInput.addEventListener('input', function() {<br /> var keyword = filterInput.value.trim().toLowerCase();<br /> data = originData.filter(function(item) {<br /> return item.name.toLowerCase().indexOf(keyword) >= 0 ||<br /> item.address.toLowerCase().indexOf(keyword) >= 0;<br /> });<br /> renderTable();<br /> });</p> <p> // 排序数据<br /> var ths = document.querySelectorAll('#myTable th');<br /> var sortBy = 'name'; // 默认按照姓名排序<br /> var sortOrder = 'asc'; // 默认升序排列<br /> for (var i = 0; i < ths.length; i++) { ths[i].addEventListener('click', function() { var key = this.dataset.key; if (sortBy === key) { sortOrder = sortOrder === 'asc' ? 'desc' : 'asc'; } else { sortBy = key; sortOrder = 'asc'; } sortTable(); renderTable(); }); } function sortTable() { var compare; if (sortOrder === 'asc') { compare = function(a, b) { if (typeof a[sortBy] === 'number' && typeof b[sortBy] === 'number') { return a[sortBy] - b[sortBy]; } else { return a[sortBy].toString().localeCompare(b[sortBy].toString()); } }; } else { compare = function(a, b) { if (typeof a[sortBy] === 'number' && typeof b[sortBy] === 'number') { return b[sortBy] - a[sortBy]; } else { return b[sortBy].toString().localeCompare(a[sortBy].toString()); } }; } data = data.sort(compare); } // 分页数据 var perPage = 3; // 每页显示3条数据 var currentPage = 1; // 当前第1页 var inputPage = document.querySelector('#inputPage'); var btnPrev = document.querySelector('#btnPrev'); var btnNext = document.querySelector('#btnNext'); inputPage.addEventListener('input', function() { var num = parseInt(inputPage.value); if (num >= 1 && num <= getTotalPage()) { currentPage = num; renderTable(); } }); btnPrev.addEventListener('click', function() { if (currentPage > 1) {<br /> currentPage--;<br /> renderTable();<br /> }<br /> });</p> <p> btnNext.addEventListener('click', function() {<br /> if (currentPage < getTotalPage()) { currentPage++; renderTable(); } }); function getTotalPage() { return Math.ceil(data.length / perPage); } function getPageData() { var start = (currentPage - 1) * perPage; var end = Math.min(start + perPage, data.length); return data.slice(start, end); } function renderTable() { var tbody = document.querySelector('#myTable tbody'); tbody.innerHTML = ''; var pageData = getPageData(); for (var i = 0; i < pageData.length; i++) { var tr = document.createElement('tr'); tr.innerHTML = '<td>'</p></script></input></input></p> </article> <script src='/adv.php?aid=2' language='javascript'></script> <!--标签--> <div class="wmd-margin-top b-t"> <div class="tags-item wmd-single-tags"> </div> </div></div> <div class="wmd-background-default b-b wmd-margin-bottom b-r-4"> <div class="wmd-text-small wmd-panding-s"> <div class="single-head"> <div class="wmd-text-small wmd-text-muted wmd-flex wmd-text-truncate wmd-overflow-auto"> <div class="avatar wmd-flex-1 wmd-flex wmd-flex-middle wmd-avatar-t"> <span class="wmd-text-small wmd-display-block wmd-margin-small-left"><a title="文章作者" rel="author">沃梦达教程</a></span> <p>本文标题为:原生javascript实现简单的datagrid数据表格</p> <button id="TKLS" class="wmd-text-fz itemCopy red_tkl button_tkl" type="button" data-clipboard-text="原生javascript实现简单的datagrid数据表格:https://www.womengda.net/nav/web/124798.html"><i class="iconfont icon-attachment"></i>复制本文链接</button> <div class="share"> <a class="weixin-share wmd-display-inline-block wmd-fx-weixin" href="#" wmd-tooltip="分享到微信" data-image="" target="_blank"><i class="iconfont icon-wechat-fill"></i></a> <a class="wmd-display-inline-block wmd-fx-qq" href="http://connect.qq.com/widget/shareqq/index.html?url=https://www.womengda.net/nav/web/124798.html&sharesource=qzone&title=原生javascript实现简单的datagrid数据表格&pics=/xwassets/images/default.png&h=200&w=300&zc=1&a=t&q=100&s=1&summary=请看下面的攻略:…" wmd-tooltip="分享到QQ好友/QQ空间" target="_blank"><i class="iconfont icon-QQ"></i></a> <a class="wmd-display-inline-block wmd-fx-weibo" href="http://service.weibo.com/share/mobile.php?url=https://www.womengda.net/nav/web/124798.html&title=原生javascript实现简单的datagrid数据表格&appkey=3313789115" wmd-tooltip="分享到微博" target="_blank"><i class="iconfont icon-weibo1"></i></a> </div> </div> </div> </div> </div> </div> <script src="https://www.womengda.net/xwassets/js/clipboard.min.js" type="text/javascript"></script> <script> var clipboard = new Clipboard('.itemCopy'); clipboard.on('success', function(e) { if (e.trigger.disabled == false || e.trigger.disabled == undefined) { e.trigger.innerHTML = "<i class='iconfont icon-attachment'></i>链接复制成功"; e.trigger.disabled = true; setTimeout(function() { e.trigger.innerHTML = "<i class='iconfont icon-attachment'></i>复制本文链接"; e.trigger.disabled = false; }, 2000); } }); clipboard.on('error', function(e) { e.trigger.innerHTML = "链接复制失败"; }); </script> <div class="wmd-grid-small wmd-margin-bottom" wmd-grid> <div class='wmd-width-1-2'> <div class='b-r-4 wmd-inline wmd-overflow-hidden wmd-width-1-1 wmd-page-img' style='height:100px'> <img width='400' height='267' src='/xwassets/images/pre.png' class='attachment- size- wp-post-image' alt='' decoding='async' loading='lazy' srcset='/xwassets/images/pre.png 400w, /xwassets/images/pre.png 300w' sizes='(max-width: 400px) 100vw, 400px' /> <div class='wmd-overlay wmd-overlay-primary wmd-position-bottom'> <span>上一篇:</span> <a href='/nav/web/124797.html' class='wmd-display-block wmd-text-truncate'>关于type=”file”的input框样式修改小结</a> </div> </div> </div> <div class='wmd-width-1-2'> <div class='b-r-4 wmd-inline wmd-overflow-hidden wmd-width-1-1 wmd-page-img' style='height:100px'> <img width='400' height='267' src='/xwassets/images/next.png' class='attachment- size- wp-post-image' alt='' decoding='async' loading='lazy' srcset='/xwassets/images/next.png 400w, /xwassets/images/next.png 300w' sizes='(max-width: 400px) 100vw, 400px' /> <div class='wmd-overlay wmd-overlay-primary wmd-position-bottom'> <span>下一篇:</span> <a href='/nav/web/124799.html' class='wmd-display-block wmd-text-truncate'>JQuery中解决重复动画的方法</a> </div> </div> </div> </div> <script src='https://www.womengda.net/adv.php?aid=3' language='javascript'></script> <!--猜你喜欢--> <section id="ceoxiangguan" class="wmd-background-default b-b wmd-margin-bottom-20 wmd-margin-top-20 b-r-4 wmd-padding-30px wmd-xiangguan"> <div class="wmd-xiangguan-wen"> <div class="wmd-qa-commont"> <span class="wmd-qa-turn"><i class="iconfont icon-xiangkan"></i> 猜你喜欢</span> </div> <ul class="xgart-row"> <li> <a href="/nav/web/113984.html" target="_blank" >vue-cli · Failed to download repo vuejs-templates/webpack: connect ETIMEDOUT 192.30.253.112:443</a> <span>2023-10-08</span> </li> <li> <a href="/nav/web/88053.html" target="_blank" >Ajax上传图片的本质</a> <span>2022-12-15</span> </li> <li> <a href="/nav/web/116704.html" target="_blank" >javascript开发随笔一 preventDefault的必要</a> <span>2023-12-02</span> </li> <li> <a href="/nav/web/114002.html" target="_blank" >Vue技术栈开发学习之状态管理bus的使用</a> <span>2023-10-08</span> </li> <li> <a href="/nav/web/121036.html" target="_blank" >监控 url fragment变化的js代码</a> <span>2024-01-16</span> </li> <li> <a href="/nav/web/121072.html" target="_blank" >js中页面的重新加载(当前页面/上级页面)及frame或iframe元素引用介绍</a> <span>2024-01-16</span> </li> <li> <a href="/nav/web/110358.html" target="_blank" >JavaScript中find()和 filter()方法的区别小结</a> <span>2023-08-12</span> </li> <li> <a href="/nav/web/114349.html" target="_blank" >mysql-在Yii中排序CHtml :: listData下拉列表</a> <span>2023-10-26</span> </li> <li> <a href="/nav/web/123065.html" target="_blank" >CSS网页布局入门教程6:左列固定,右列宽度自适应</a> <span>2024-02-06</span> </li> <li> <a href="/nav/web/93178.html" target="_blank" >Ajax传递特殊字符的数据如何解决</a> <span>2023-02-14</span> </li> </ul> </div> </section> </div> </div> <div class="wmd-side-lie-y sidebar-column"> <div class="sidebar"> <section class="side-author b-a b-r-4 wmd-background-default wmd-overflow-hidden wmd-margin-bottom"> <div class="side-author-latest wmd-background-default wmd-padding-small"> <div class="b-b wmd-padding-top-small wmd-padding-remove-horizontal wmd-clearfix wmd-flex wmd-flex-middle"> <span class="side-title side-title-style wmd-h5 wmd-float-left wmd-margin-remove wmd-position-relative">最新文章</span> </div> <ul class="wmd-padding-remove wmd-margin-remove-bottom"> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-24</span> <a href="/nav/web/124797.html" target="_blank" class="wmd-display-block">关于type=”file”的input框样式修改小结</a> </li> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-24</span> <a href="/nav/web/124796.html" target="_blank" class="wmd-display-block">ie9崩溃现象当js设置tr元素样式为display:none</a> </li> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-24</span> <a href="/nav/web/124795.html" target="_blank" class="wmd-display-block">JQuery contains的选择器</a> </li> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-24</span> <a href="/nav/web/124794.html" target="_blank" class="wmd-display-block">jQuery 复合选择器应用的几个例子</a> </li> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-24</span> <a href="/nav/web/124793.html" target="_blank" class="wmd-display-block">jquery实现滑动特效代码</a> </li> </ul> </div> </section> <section class="side-art b-a b-r-4 wmd-background-default wmd-margin-bottom"> <div class="b-b wmd-padding-small wmd-clearfix wmd-flex wmd-flex-middle"> <span class="side-title side-title-style wmd-h5 wmd-float-left wmd-margin-remove wmd-position-relative">热门文章</span> </div> <ul class="wmd-list wmd-padding-remove wmd-overflow-auto wmd-sidebar-wenzhang"> <li class="wmd-margin-remove-top"> <div class="b-b wmd-padding-small"> <div wmd-grid class="wmd-grid-small"> <div class="wmd-width-1-3"> <a href="/nav/web/83903.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/imgfile/2211/1-2211011GR2209-simg.png" alt="怎么查看Iconfont字体有哪些图标和编码" src="https://www.womengda.net/xwassets/images/default.gif" class="lazyload" > </a> </div> <div class="wmd-width-2-3 wmd-sidebar-article-c"> <div class="wmd-card"> <p class="wmd-margin-small-bottom"> <a href="/nav/web/83903.html" target="_blank" class="wmd-display-block wmd-text-truncate">怎么查看Iconfont字体有哪些图标和编码</a> </p> <div class="wmd-sidebar-article-ch wmd-text-meta wmd-margin-small-top wmd-flex"> <span class="wmd-margin-right"><i class="iconfont icon-rili"></i>2022-11-02</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>1559</span> </div> </div> </div> </div> </div> </li> <li class="wmd-margin-remove-top"> <div class="b-b wmd-padding-small"> <div wmd-grid class="wmd-grid-small"> <div class="wmd-width-1-3"> <a href="/nav/web/80817.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/imgfile/2209/1B363D93500P-1cc.jpg" alt="HTML怎么设置下划线?html文字加下划线方法" src="https://www.womengda.net/xwassets/images/default.gif" class="lazyload" > </a> </div> <div class="wmd-width-2-3 wmd-sidebar-article-c"> <div class="wmd-card"> <p class="wmd-margin-small-bottom"> <a href="/nav/web/80817.html" target="_blank" class="wmd-display-block wmd-text-truncate">HTML怎么设置下划线?html文字加下划线方法</a> </p> <div class="wmd-sidebar-article-ch wmd-text-meta wmd-margin-small-top wmd-flex"> <span class="wmd-margin-right"><i class="iconfont icon-rili"></i>2022-09-21</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>1320</span> </div> </div> </div> </div> </div> </li> <li class="wmd-margin-remove-top"> <div class="b-b wmd-padding-small"> <div wmd-grid class="wmd-grid-small"> <div class="wmd-width-1-3"> <a href="/nav/web/84946.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/imgfile/2211/1BPH2Y40930-133308.png" alt="实现css文字垂直居中的8种方法" src="https://www.womengda.net/xwassets/images/default.gif" class="lazyload" > </a> </div> <div class="wmd-width-2-3 wmd-sidebar-article-c"> <div class="wmd-card"> <p class="wmd-margin-small-bottom"> <a href="/nav/web/84946.html" target="_blank" class="wmd-display-block wmd-text-truncate">实现css文字垂直居中的8种方法</a> </p> <div class="wmd-sidebar-article-ch wmd-text-meta wmd-margin-small-top wmd-flex"> <span class="wmd-margin-right"><i class="iconfont icon-rili"></i>2022-11-13</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>845</span> </div> </div> </div> </div> </div> </li> <li class="wmd-margin-remove-top"> <div class="b-b wmd-padding-small"> <div wmd-grid class="wmd-grid-small"> <div class="wmd-width-1-3"> <a href="/nav/web/79040.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/imgfile/2208/1B1S11b22F-SI9.jpg" alt="uniapp打包成微信小程序的详细过程" src="https://www.womengda.net/xwassets/images/default.gif" class="lazyload" > </a> </div> <div class="wmd-width-2-3 wmd-sidebar-article-c"> <div class="wmd-card"> <p class="wmd-margin-small-bottom"> <a href="/nav/web/79040.html" target="_blank" class="wmd-display-block wmd-text-truncate">uniapp打包成微信小程序的详细过程</a> </p> <div class="wmd-sidebar-article-ch wmd-text-meta wmd-margin-small-top wmd-flex"> <span class="wmd-margin-right"><i class="iconfont icon-rili"></i>2022-08-31</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>696</span> </div> </div> </div> </div> </div> </li> <li class="wmd-margin-remove-top"> <div class="b-b wmd-padding-small"> <div wmd-grid class="wmd-grid-small"> <div class="wmd-width-1-3"> <a href="/nav/web/79052.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/imgfile/2208/1B1S1244c230-1G0X.png" alt="微信小程序使用uni-app开发小程序及部分功能实现" src="https://www.womengda.net/xwassets/images/default.gif" class="lazyload" > </a> </div> <div class="wmd-width-2-3 wmd-sidebar-article-c"> <div class="wmd-card"> <p class="wmd-margin-small-bottom"> <a href="/nav/web/79052.html" target="_blank" class="wmd-display-block wmd-text-truncate">微信小程序使用uni-app开发小程序及部分功能实现</a> </p> <div class="wmd-sidebar-article-ch wmd-text-meta wmd-margin-small-top wmd-flex"> <span class="wmd-margin-right"><i class="iconfont icon-rili"></i>2022-08-31</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>568</span> </div> </div> </div> </div> </div> </li> </ul> </section> <script src='/adv.php?aid=1' language='javascript'></script> <section class="side-art b-a b-r-4 wmd-background-default wmd-margin-bottom"> <div class="b-b wmd-padding-small wmd-clearfix wmd-flex wmd-flex-middle"> <span class="side-title side-title-style wmd-h5 wmd-float-left wmd-margin-remove wmd-position-relative">基础教程</span> </div> <ul class="wmd-sidebar-double wmd-padding-small wmd-overflow-auto wmd-sidebar-wenzhang wmd-grid" wmd-grid=""> <li class="wmd-margin-remove-top wmd-width-1-2 wmd-first-column"> <a href="/javascript/" class="wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/2206/1-22062Q50K03Y.png" alt="JavaScript教程" src="https://oss.womengda.net/2206/1-22062Q50K03Y.png" class="b-r-4 ls-is-cached lazyloaded"> <p>学习JavaScript</p> </a> </li><li class="wmd-margin-remove-top wmd-width-1-2 wmd-first-column"> <a href="/python/" class="wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/2207/1-220F1110135351.png" alt="Python教程" src="https://oss.womengda.net/2207/1-220F1110135351.png" class="b-r-4 ls-is-cached lazyloaded"> <p>学习Python</p> </a> </li><li class="wmd-margin-remove-top wmd-width-1-2 wmd-first-column"> <a href="/android/" class="wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/2207/1-220F1110044F0.png" alt="Android教程" src="https://oss.womengda.net/2207/1-220F1110044F0.png" class="b-r-4 ls-is-cached lazyloaded"> <p>学习Android</p> </a> </li><li class="wmd-margin-remove-top wmd-width-1-2 wmd-first-column"> <a href="/html5/" class="wmd-display-block wmd-overflow-hidden"> <img data-src="https://oss.womengda.net/2206/1-22062H209361U.jpg" alt="HTML5教程" src="https://oss.womengda.net/2206/1-22062H209361U.jpg" class="b-r-4 ls-is-cached lazyloaded"> <p>学习HTML5</p> </a> </li> </ul> </section> <section class="side-tag b-r-4 b-a wmd-background-default wmd-margin-bottom"> <div class="b-b wmd-padding-small wmd-flex wmd-flex-middle"> <span class="side-title side-title-style wmd-position-relative">热门标签</span> </div> <ul class="wmd-list tags-item wmd-padding-small wmd-margin-remove"> <a wmd-tooltip="91个相关文章" href='https://www.womengda.net/pins/392_1.html' title="" target="_blank" class="b-r-4 wmd-text-small"></a> <a wmd-tooltip="23个相关文章" href='https://www.womengda.net/pins/246_1.html' title="layui" target="_blank" class="b-r-4 wmd-text-small">layui</a> <a wmd-tooltip="1个相关文章" href='https://www.womengda.net/pins/394_1.html' title="treetable" target="_blank" class="b-r-4 wmd-text-small">treetable</a> <a wmd-tooltip="3个相关文章" href='https://www.womengda.net/pins/275_1.html' title="下拉框" target="_blank" class="b-r-4 wmd-text-small">下拉框</a> <a wmd-tooltip="1个相关文章" href='https://www.womengda.net/pins/393_1.html' title="可编辑" target="_blank" class="b-r-4 wmd-text-small">可编辑</a> <a wmd-tooltip="40个相关文章" href='https://www.womengda.net/pins/1_1.html' title="html" target="_blank" class="b-r-4 wmd-text-small">html</a> <a wmd-tooltip="2个相关文章" href='https://www.womengda.net/pins/90_1.html' title="跳转" target="_blank" class="b-r-4 wmd-text-small">跳转</a> <a wmd-tooltip="2个相关文章" href='https://www.womengda.net/pins/267_1.html' title="链接" target="_blank" class="b-r-4 wmd-text-small">链接</a> <a wmd-tooltip="2个相关文章" href='https://www.womengda.net/pins/205_1.html' title="img" target="_blank" class="b-r-4 wmd-text-small">img</a> <a wmd-tooltip="32个相关文章" href='https://www.womengda.net/pins/10_1.html' title="dedecms" target="_blank" class="b-r-4 wmd-text-small">dedecms</a> <a wmd-tooltip="16个相关文章" href='https://www.womengda.net/pins/15_1.html' title="织梦" target="_blank" class="b-r-4 wmd-text-small">织梦</a> <a wmd-tooltip="71个相关文章" href='https://www.womengda.net/pins/56_1.html' title="php" target="_blank" class="b-r-4 wmd-text-small">php</a> <a wmd-tooltip="12个相关文章" href='https://www.womengda.net/pins/70_1.html' title="正则表达式" target="_blank" class="b-r-4 wmd-text-small">正则表达式</a> <a wmd-tooltip="3个相关文章" href='https://www.womengda.net/pins/289_1.html' title="匹配" target="_blank" class="b-r-4 wmd-text-small">匹配</a> <a wmd-tooltip="2个相关文章" href='https://www.womengda.net/pins/391_1.html' title="video" target="_blank" class="b-r-4 wmd-text-small">video</a> <a wmd-tooltip="140个相关文章" href='https://www.womengda.net/pins/390_1.html' title="跨域问题" target="_blank" class="b-r-4 wmd-text-small">跨域问题</a> <a wmd-tooltip="4个相关文章" href='https://www.womengda.net/pins/389_1.html' title="区块链" target="_blank" class="b-r-4 wmd-text-small">区块链</a> <a wmd-tooltip="35个相关文章" href='https://www.womengda.net/pins/388_1.html' title="定时任务" target="_blank" class="b-r-4 wmd-text-small">定时任务</a> <a wmd-tooltip="1个相关文章" href='https://www.womengda.net/pins/387_1.html' title="资源映射" target="_blank" class="b-r-4 wmd-text-small">资源映射</a> <a wmd-tooltip="88个相关文章" href='https://www.womengda.net/pins/386_1.html' title="设计模式" target="_blank" class="b-r-4 wmd-text-small">设计模式</a> <a wmd-tooltip="7个相关文章" href='https://www.womengda.net/pins/385_1.html' title="代理模式" target="_blank" class="b-r-4 wmd-text-small">代理模式</a> <a wmd-tooltip="15个相关文章" href='https://www.womengda.net/pins/384_1.html' title="EasyExcel" target="_blank" class="b-r-4 wmd-text-small">EasyExcel</a> <a wmd-tooltip="2个相关文章" href='https://www.womengda.net/pins/383_1.html' title="运行原理" target="_blank" class="b-r-4 wmd-text-small">运行原理</a> <a wmd-tooltip="14个相关文章" href='https://www.womengda.net/pins/382_1.html' title="归并排序" target="_blank" class="b-r-4 wmd-text-small">归并排序</a> <a wmd-tooltip="88个相关文章" href='https://www.womengda.net/pins/359_1.html' title="排序算法" target="_blank" class="b-r-4 wmd-text-small">排序算法</a> <a wmd-tooltip="9个相关文章" href='https://www.womengda.net/pins/381_1.html' title="希尔排序" target="_blank" class="b-r-4 wmd-text-small">希尔排序</a> <a wmd-tooltip="25个相关文章" href='https://www.womengda.net/pins/380_1.html' title="快速排序" target="_blank" class="b-r-4 wmd-text-small">快速排序</a> <a wmd-tooltip="21个相关文章" href='https://www.womengda.net/pins/361_1.html' title="冒泡排序" target="_blank" class="b-r-4 wmd-text-small">冒泡排序</a> <a wmd-tooltip="10个相关文章" href='https://www.womengda.net/pins/379_1.html' title="经典算法" target="_blank" class="b-r-4 wmd-text-small">经典算法</a> <a wmd-tooltip="16个相关文章" href='https://www.womengda.net/pins/378_1.html' title="Nacos" target="_blank" class="b-r-4 wmd-text-small">Nacos</a> <a wmd-tooltip="28个相关文章" href='https://www.womengda.net/pins/377_1.html' title="对象转换" target="_blank" class="b-r-4 wmd-text-small">对象转换</a> <a wmd-tooltip="267个相关文章" href='https://www.womengda.net/pins/335_1.html' title="Springboot" target="_blank" class="b-r-4 wmd-text-small">Springboot</a> <a wmd-tooltip="14个相关文章" href='https://www.womengda.net/pins/74_1.html' title="mysql" target="_blank" class="b-r-4 wmd-text-small">mysql</a> <a wmd-tooltip="1个相关文章" href='https://www.womengda.net/pins/376_1.html' title="远程连接" target="_blank" class="b-r-4 wmd-text-small">远程连接</a> <a wmd-tooltip="92个相关文章" href='https://www.womengda.net/pins/375_1.html' title="过滤器" target="_blank" class="b-r-4 wmd-text-small">过滤器</a> <a wmd-tooltip="47个相关文章" href='https://www.womengda.net/pins/374_1.html' title="监听器" target="_blank" class="b-r-4 wmd-text-small">监听器</a> <a wmd-tooltip="39个相关文章" href='https://www.womengda.net/pins/373_1.html' title="多进程" target="_blank" class="b-r-4 wmd-text-small">多进程</a> <a wmd-tooltip="23个相关文章" href='https://www.womengda.net/pins/372_1.html' title="图片上传" target="_blank" class="b-r-4 wmd-text-small">图片上传</a> <a wmd-tooltip="21个相关文章" href='https://www.womengda.net/pins/371_1.html' title="无刷新" target="_blank" class="b-r-4 wmd-text-small">无刷新</a> <a wmd-tooltip="1个相关文章" href='https://www.womengda.net/pins/370_1.html' title="wushuaxi" target="_blank" class="b-r-4 wmd-text-small">wushuaxi</a> </ul> </section> </div> </div> </div> </div> <!--内页专题--> </section> </main> <div class="wmd-app-gotop gotops wmd-hidden@s" id="gotops"> <a href="#header" class="wmd-display-block" wmd-scroll> <i class="iconfont icon-arrow-up"></i> </a> </div><!--Banner--> <footer class="footer wmd-background-secondary"> <div class="foot wmd-container wmd-padding"> <div class="wmd-grid" wmd-grid> <div class="wmd-width-1-1@s wmd-width-1-3@xl"> <div class="foot-item foot-item-first wmd-position-relative"> <a href="" target="_blank" class="foot-logo wmd-display-block"><img src="https://www.womengda.net/xwassets/images/flogo.png"></a> <p class="wmd-text-small">沃梦达教程网是一个专门为菜鸟打造的前端开发和软件编程的学习网站,可以为编程者和程序员提供海量技术文档,以便编程初学者快速入门,提升开发技术水平和工作效率。</p> </div> </div> <div class="wmd-width-2-3 wmd-visible@s"> <div class="wmd-grid" wmd-grid> <div class="wmd-width-1-3"> <div class="foot-item"> <div class="foot-item-title"><i class="iconfont icon-anquan"></i>编程基础</div> <ul class="wmd-padding-remove"> <li><a href="/acode_h/" target="_blank"> HTML/CSS</a></li><li><a href="/acode_js/" target="_blank"> JAVASCRIPT</a></li><li><a href="/acode_php/" target="_blank"> PHP</a></li><li><a href="/acode_java/" target="_blank"> JAVA</a></li><li><a href="/acode_net/" target="_blank"> ASP.NET</a></li><li><a href="/acode_python/" target="_blank"> Python</a></li> </ul> </div> </div> <div class="wmd-width-1-3"> <div class="foot-item"> <div class="foot-item-title"><i class="iconfont icon-anquan"></i>编程教程</div> <ul class="wmd-padding-remove"><li><a href="/program/" target="_blank">编程基础</a></li><li><a href="/nav/" target="_blank">IT编程</a></li><li><a href="/ask/" target="_blank">编程问答</a></li><li><a href="/demo/" target="_blank">实例代码</a></li> </ul> </div> </div> </div> </div> </div> </div> <div class="foot-cop"> <div class="wmd-container wmd-padding-small wmd-clearfix"> <div class="wmd-float-left"> <span>© 2023-2024 沃梦达 版权所有并保留所有权</span> <a class="wmd-margin-small-right" href="https://www.womengda.net/sitemap.xml" target="_blank"><i class="iconfont icon-location-fill" aria-hidden="true"></i> 网站地图</a> <span class="wmd-margin-small-right"><a href="https://beian.miit.gov.cn/" target="_blank" rel="noreferrer nofollow">ICP备案号:<a href="https://beian.miit.gov.cn/" rel="nofollow" style="color:#bbb">粤ICP备14083021号</a></a></span>   </div> </div> </div> <script type='text/javascript' src='https://www.womengda.net/xwassets/js/jquery.cookie.js'></script> </footer> <!--手机端菜单--> <div class="wmd-app-footer-fixed wmd-app-footer wmd-hidden@s"> <a href="https://www.womengda.net"> <span class="icon"> <i class="iconfont icon-home"></i> </span> <span class="text">网站首页</span> </a> <a href="/acode_h/"> <span class="icon"> <i class="iconfont icon-read-fill"></i> </span> <span class="text">HTML/CSS</span> </a> <a class="cat" wmd-toggle="target: #mob-nav"> <span class="icon"> <i class="iconfont icon-all"></i> </span> <span class="text">菜单</span> </a> <a href="/layui/"> <span class="icon"> <i class="iconfont icon-dropbox"></i> </span> <span class="text">Layui</span> </a> <a href="/yii2/"> <span class="icon"> <i class="iconfont icon-appstore-fill"></i> </span> <span class="text">Yii2</span> </a> </div> <div id="mob-nav" wmd-offcanvas> <div class="wmd-offcanvas-bar wmd-background-default wmd-box-shadow-small wmd-mobnav-box"> <div class="mob-nav"> <div class="wmd-margin-small-bottom wmd-text-center"> <a href="https://www.womengda.net" class="logo wmd-display-inline-block wmd-margin-bottom"><img src="/xwassets/images/logo.png"></a> </div> <ul class="nav"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-home"><a href="https://www.womengda.net">网站首页</a></li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_h/">HTML/CSS</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/html/">HTML</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/html5/">HTML5</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/css/">CSS</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/css3/">CSS3</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/saas/">Sass</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/layui/">Layui</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/bootstrap3/">Bootstrap3</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/bootstrap4/">Bootstrap4</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/bootstrap5/">Bootstrap5</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/appml/">AppML</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/awesome/">Font Awesome</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/foundation5/">Foundation5</a></li> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_js/">JAVASCRIPT</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/javascript/">JavaScript</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/jquery/">jQuery</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/angularjs/">AngularJS</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/angularjs2/">AngularJS2</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/vue/">Vue.js</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/vue3/">Vue3</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/react/">React</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/typescript/">TypeScript</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/easyui/">EasyUI</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/node/">Node.js</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/ajax/">AJAX</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/json/">JSON</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/echarts/">Echarts</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/highcharts/">Highcharts</a></li> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_php/">PHP</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/php/">PHP</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/laravel/">Laravel</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/cakephp/">CakePHP</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/codeigniter/">CodeIgniter</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/zend/">Zend</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/symfony/">Symfony</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/yii2/">Yii2</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/phalcon/">Phalcon</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/thinkphp/">ThinkPHP</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/smarty/">Smarty</a></li> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_java/">JAVA</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/java/">JAVA</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/spring/">Spring</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/hibernate/">Hibernate</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/struts/">Struts</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/play/">Play</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/toolkit/">GWT</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/jsp/">Jsp</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/maven/">Maven</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/servlet/">Servlet</a></li> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_net/">ASP.NET</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/aspnet/">ASP.NET</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/csharp/">C#</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/webpages/">Web Pages</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/razor/">Razor</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/mvc/">MVC</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/webforms/">Web Forms</a></li> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_python/">Python</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/python/">Python</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/python3/">Python 3</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/django/">Django</a></li> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_go/">Go</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/go/">Go</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/docker/">Docker</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/beego/">Beego</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/buffalo/">Buffalo</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/echo/">Echo</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/gin/">Gin</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/iris/">Iris</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/revel/">Revel</a></li> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/ruby/">Ruby</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/c/">C</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/cplus/">C++</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/perl/">Perl</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/lua/">Lua</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/rust/">Rust</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/scala/">Scala</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/vb/">VB</a> <ul class="sub-menu" style='display:none;'> </ul> </li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children "><a href="/acode_m/">移动端</a> <ul class="sub-menu" > <li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/android/">Android</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/swift/">Swift</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/ionic/">ionic</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/kotlin/">Kotlin</a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category"><a href="/harmonyos/">HarmonyOS</a></li> </ul> </li> </ul></div> </div> </div> </div> <script type='text/javascript' src='https://www.womengda.net/xwassets/js/index.js'></script> <style> .night .wmd-logo-nav-night{ background: url(https://www.womengda.net/xwassets/images/flogo.png) no-repeat!important; background-size: 150px auto; } .night .wmd-app-logo2{ background: url(https://www.womengda.net/xwassets/images/flogo.png) no-repeat!important; background-size: 92px auto!important; } #canvas { position: absolute; left: 0; top: 0; } </style> <script src="https://www.womengda.net/xwassets/js/highlight.min.js?v=1"></script> <script src="https://www.womengda.net/xwassets/js/prism.min.js?v=1"></script> <script src="https://www.womengda.net/xwassets/js/prism.js?v=1"></script> </body> </html>