原生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.dedegg.com/itfiles/web/124519.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.dedegg.com/itfiles/web/124519.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.dedegg.com/itfiles/web/124519.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.dedegg.com/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='/itfiles/web/124518.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='/itfiles/web/124520.html' class='wmd-display-block wmd-text-truncate'>JQuery中解决重复动画的方法</a> </div> </div> </div> </div> <script src='/adv.php?aid=3' language='javascript'></script> <!--相关文章--> <section id="newbaike" class="wmd-background-default b-b wmd-margin-bottom-20 wmd-margin-top-20 b-r-4 wmd-single-foos wmd-xiangguan"> <div class="wmd-qa-commont section-title wmd-flex wmd-flex-middle"> <h3 class="wmd-position-relative wmd-flex-1 wmd-display-inline-block wmd-margin-remove"><i class="iconfont icon-wenjuan"></i> 基础教程推荐</h3> </div> <div class="card wmd-margin-top"> <div class="wmd-grid-ceosmls" wmd-grid> <div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/shtml/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-22061Q11954421.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/shtml/" target="_blank" class="title wmd-display-block" title="学习HTML"> 学习HTML</a> </div> </div> </div></div><div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/jquery/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-22062Q53310911.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/jquery/" target="_blank" class="title wmd-display-block" title="学习jQuery"> 学习jQuery</a> </div> </div> </div></div><div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/laravel/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-220630101I5353.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/laravel/" target="_blank" class="title wmd-display-block" title="学习Laravel"> 学习Laravel</a> </div> </div> </div></div><div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/css3/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-220622222529626.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/css3/" target="_blank" class="title wmd-display-block" title="学习CSS3"> 学习CSS3</a> </div> </div> </div></div><div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/vue/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-22062Q63Z4541.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/vue/" target="_blank" class="title wmd-display-block" title="学习Vue.js"> 学习Vue.js</a> </div> </div> </div></div><div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/bootstrap5/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-22062G53UE17.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/bootstrap5/" target="_blank" class="title wmd-display-block" title="学习Bootstrap5"> 学习Bootstrap5</a> </div> </div> </div></div><div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/thinkphp/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-22063014335cI.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/thinkphp/" target="_blank" class="title wmd-display-block" title="学习ThinkPHP"> 学习ThinkPHP</a> </div> </div> </div></div><div class="wmd-width-1-1@s wmd-width-1-2 wmd-width-1-4@xl"> <div class="card-item b-r-4 wmd-background-default wmd-overflow-hidden wmd-vip-icons"> <div class="wmd_xg_img"> <a href="/ajax/" target="_blank" class="cover wmd-display-block wmd-overflow-hidden "> <img data-src="https://imgs.dedegg.com/2206/1-22062R10QHQ.jpg" class="wmd-width-1-1@s lazyload"> </a> </div> <div class="wmd-padding-remove"> <div class="card-title-desc"> <a href="/ajax/" target="_blank" class="title wmd-display-block" title="学习AJAX"> 学习AJAX</a> </div> </div> </div></div> </div> </div> </section> <!--猜你喜欢--> <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="/itfiles/web/106847.html" target="_blank" >moment转化时间戳出现Invalid Date的问题及解决</a> <span>2023-07-09</span> </li> <li> <a href="/itfiles/web/118491.html" target="_blank" >ASP.NET搭配Ajax实现搜索提示功能</a> <span>2023-12-19</span> </li> <li> <a href="/itfiles/web/113416.html" target="_blank" >01Vue3-认识Vue</a> <span>2023-10-08</span> </li> <li> <a href="/itfiles/web/119623.html" target="_blank" >GoJs面板绘图模板go.Panel使用示例详解</a> <span>2023-12-28</span> </li> <li> <a href="/itfiles/web/119418.html" target="_blank" >浅谈css position absolute相对于父元素的设置方式</a> <span>2023-12-27</span> </li> <li> <a href="/itfiles/web/116350.html" target="_blank" >fastclick插件导致日期(input[type=”date”])控件无法被触发该如何解决</a> <span>2023-12-01</span> </li> <li> <a href="/itfiles/web/113733.html" target="_blank" >Vue.js中引入图片路径的几种方式</a> <span>2023-10-08</span> </li> <li> <a href="/itfiles/web/113421.html" target="_blank" >vue3+element-plus开发学习管理系统</a> <span>2023-10-08</span> </li> <li> <a href="/itfiles/web/117623.html" target="_blank" >网页设计学习教程 CSS盒模型</a> <span>2023-12-12</span> </li> <li> <a href="/itfiles/web/93760.html" target="_blank" >ajax和fetch的区别点总结</a> <span>2023-02-23</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-08</span> <a href="/itfiles/web/124518.html" target="_blank" class="wmd-display-block">关于type=”file”的input框样式修改小结</a> </li> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-08</span> <a href="/itfiles/web/124517.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-08</span> <a href="/itfiles/web/124516.html" target="_blank" class="wmd-display-block">JQuery contains的选择器</a> </li> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-08</span> <a href="/itfiles/web/124515.html" target="_blank" class="wmd-display-block">jQuery 复合选择器应用的几个例子</a> </li> <li class="wmd-margin-small-bottom wmd-position-relative"> <span>2024-02-08</span> <a href="/itfiles/web/124514.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="/itfiles/web/83559.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/imgfile/2211/1-2211011GR2209-simg.png" alt="怎么查看Iconfont字体有哪些图标和编码" src="https://www.dedegg.com/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="/itfiles/web/83559.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-04</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>653</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="/itfiles/web/83563.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/imgfile/2211/1-2211011KFU04-simg.png" alt="Uncaught TypeError: Cannot read properties of undefined (reading ‘install‘)报错" src="https://www.dedegg.com/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="/itfiles/web/83563.html" target="_blank" class="wmd-display-block wmd-text-truncate">Uncaught TypeError: Cannot read properties of undefined (reading ‘install‘)报错</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-04</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>495</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="/itfiles/web/83235.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/imgfile/2210/1BD6133I1O0-Q395.gif" alt="cocos creator游戏实现loading加载页面,游戏启动加载动画" src="https://www.dedegg.com/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="/itfiles/web/83235.html" target="_blank" class="wmd-display-block wmd-text-truncate">cocos creator游戏实现loading加载页面,游戏启动加载动画</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-10-30</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>443</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="/itfiles/web/106849.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/imgfile/2307/1DS64092W50-1Z95.png" alt="vue父子组件传值不能实时更新的解决方法" src="https://www.dedegg.com/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="/itfiles/web/106849.html" target="_blank" class="wmd-display-block wmd-text-truncate">vue父子组件传值不能实时更新的解决方法</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>2023-07-09</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>278</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="/itfiles/web/78917.html" class="side-art-cover b-r-4 wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/imgfile/2207/1-220H51FKO20-lp.png" alt="javascript报错:xxx.foreach is not a function" src="https://www.dedegg.com/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="/itfiles/web/78917.html" target="_blank" class="wmd-display-block wmd-text-truncate">javascript报错:xxx.foreach is not a function</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-07-25</span> <span class="wmd-margin-right wmd-flex wmd-flex-middle"><i class="iconfont iconfont icon-yanjing"></i>224</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="/php/" class="wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/2206/1-22062R22353201.png" alt="PHP教程" src="https://imgs.dedegg.com/2206/1-22062R22353201.png" class="b-r-4 ls-is-cached lazyloaded"> <p>学习PHP</p> </a> </li><li class="wmd-margin-remove-top wmd-width-1-2 wmd-first-column"> <a href="/java/" class="wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/2207/1-220F223324U62.png" alt="JAVA教程" src="https://imgs.dedegg.com/2207/1-220F223324U62.png" class="b-r-4 ls-is-cached lazyloaded"> <p>学习JAVA</p> </a> </li><li class="wmd-margin-remove-top wmd-width-1-2 wmd-first-column"> <a href="/aspnet/" class="wmd-display-block wmd-overflow-hidden"> <img data-src="https://imgs.dedegg.com/2207/1-220F2164415D9.png" alt="ASP.NET教程" src="https://imgs.dedegg.com/2207/1-220F2164415D9.png" class="b-r-4 ls-is-cached lazyloaded"> <p>学习ASP.NET</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://imgs.dedegg.com/2207/1-220F1110135351.png" alt="Python教程" src="https://imgs.dedegg.com/2207/1-220F1110135351.png" class="b-r-4 ls-is-cached lazyloaded"> <p>学习Python</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="136个相关文章" href='https://www.dedegg.com/itdocs/_177_1.html' title="" target="_blank" class="b-r-4 wmd-text-small"></a> <a wmd-tooltip="22个相关文章" href='https://www.dedegg.com/itdocs/layui_246_1.html' title="layui" target="_blank" class="b-r-4 wmd-text-small">layui</a> <a wmd-tooltip="1个相关文章" href='https://www.dedegg.com/itdocs/treetable_399_1.html' title="treetable" target="_blank" class="b-r-4 wmd-text-small">treetable</a> <a wmd-tooltip="3个相关文章" href='https://www.dedegg.com/itdocs/xialakuang_275_1.html' title="下拉框" target="_blank" class="b-r-4 wmd-text-small">下拉框</a> <a wmd-tooltip="1个相关文章" href='https://www.dedegg.com/itdocs/kebianji_398_1.html' title="可编辑" target="_blank" class="b-r-4 wmd-text-small">可编辑</a> <a wmd-tooltip="54个相关文章" href='https://www.dedegg.com/itdocs/html_1_1.html' title="html" target="_blank" class="b-r-4 wmd-text-small">html</a> <a wmd-tooltip="2个相关文章" href='https://www.dedegg.com/itdocs/img_205_1.html' title="img" target="_blank" class="b-r-4 wmd-text-small">img</a> <a wmd-tooltip="4个相关文章" href='https://www.dedegg.com/itdocs/M_295_1.html' title="M" target="_blank" class="b-r-4 wmd-text-small">M</a> <a wmd-tooltip="2个相关文章" href='https://www.dedegg.com/itdocs/s_300_1.html' title="s" target="_blank" class="b-r-4 wmd-text-small">s</a> <a wmd-tooltip="2个相关文章" href='https://www.dedegg.com/itdocs/tiaozhuan_90_1.html' title="跳转" target="_blank" class="b-r-4 wmd-text-small">跳转</a> <a wmd-tooltip="2个相关文章" href='https://www.dedegg.com/itdocs/lianjie_267_1.html' title="链接" target="_blank" class="b-r-4 wmd-text-small">链接</a> <a wmd-tooltip="16个相关文章" href='https://www.dedegg.com/itdocs/zhimeng_15_1.html' title="织梦" target="_blank" class="b-r-4 wmd-text-small">织梦</a> <a wmd-tooltip="32个相关文章" href='https://www.dedegg.com/itdocs/dedecms_10_1.html' title="dedecms" target="_blank" class="b-r-4 wmd-text-small">dedecms</a> <a wmd-tooltip="1166个相关文章" href='https://www.dedegg.com/itdocs/php_56_1.html' title="php" target="_blank" class="b-r-4 wmd-text-small">php</a> <a wmd-tooltip="10个相关文章" href='https://www.dedegg.com/itdocs/zhengzebiaodashi_70_1.html' title="正则表达式" target="_blank" class="b-r-4 wmd-text-small">正则表达式</a> <a wmd-tooltip="1个相关文章" href='https://www.dedegg.com/itdocs/pipei_397_1.html' title="匹配" target="_blank" class="b-r-4 wmd-text-small">匹配</a> <a wmd-tooltip="2个相关文章" href='https://www.dedegg.com/itdocs/video_396_1.html' title="video" target="_blank" class="b-r-4 wmd-text-small">video</a> <a wmd-tooltip="14个相关文章" href='https://www.dedegg.com/itdocs/mysql_74_1.html' title="mysql" target="_blank" class="b-r-4 wmd-text-small">mysql</a> <a wmd-tooltip="1个相关文章" href='https://www.dedegg.com/itdocs/yuanchenglianjie_395_1.html' title="远程连接" target="_blank" class="b-r-4 wmd-text-small">远程连接</a> <a wmd-tooltip="92个相关文章" href='https://www.dedegg.com/itdocs/guolvqi_394_1.html' title="过滤器" target="_blank" class="b-r-4 wmd-text-small">过滤器</a> <a wmd-tooltip="54个相关文章" href='https://www.dedegg.com/itdocs/jiantingqi_393_1.html' title="监听器" target="_blank" class="b-r-4 wmd-text-small">监听器</a> <a wmd-tooltip="39个相关文章" href='https://www.dedegg.com/itdocs/duojincheng_392_1.html' title="多进程" target="_blank" class="b-r-4 wmd-text-small">多进程</a> <a wmd-tooltip="22个相关文章" href='https://www.dedegg.com/itdocs/tupianshangchuan_391_1.html' title="图片上传" target="_blank" class="b-r-4 wmd-text-small">图片上传</a> <a wmd-tooltip="19个相关文章" href='https://www.dedegg.com/itdocs/wushuaxin_390_1.html' title="无刷新" target="_blank" class="b-r-4 wmd-text-small">无刷新</a> <a wmd-tooltip="808个相关文章" href='https://www.dedegg.com/itdocs/jiazai_389_1.html' title="加载" target="_blank" class="b-r-4 wmd-text-small">加载</a> <a wmd-tooltip="75个相关文章" href='https://www.dedegg.com/itdocs/jdk_388_1.html' title="jdk" target="_blank" class="b-r-4 wmd-text-small">jdk</a> <a wmd-tooltip="154个相关文章" href='https://www.dedegg.com/itdocs/Socket_387_1.html' title="Socket" target="_blank" class="b-r-4 wmd-text-small">Socket</a> <a wmd-tooltip="7个相关文章" href='https://www.dedegg.com/itdocs/xunhuanyuju_386_1.html' title="循环语句" target="_blank" class="b-r-4 wmd-text-small">循环语句</a> <a wmd-tooltip="35个相关文章" href='https://www.dedegg.com/itdocs/paixusuanfa_383_1.html' title="排序算法" target="_blank" class="b-r-4 wmd-text-small">排序算法</a> <a wmd-tooltip="8个相关文章" href='https://www.dedegg.com/itdocs/maopaopaixu_385_1.html' title="冒泡排序" target="_blank" class="b-r-4 wmd-text-small">冒泡排序</a> <a wmd-tooltip="2个相关文章" href='https://www.dedegg.com/itdocs/fangdaolian_384_1.html' title="防盗链" target="_blank" class="b-r-4 wmd-text-small">防盗链</a> <a wmd-tooltip="4个相关文章" href='https://www.dedegg.com/itdocs/caiji_67_1.html' title="采集" target="_blank" class="b-r-4 wmd-text-small">采集</a> <a wmd-tooltip="44个相关文章" href='https://www.dedegg.com/itdocs/xialacaidan_322_1.html' title="下拉菜单" target="_blank" class="b-r-4 wmd-text-small">下拉菜单</a> <a wmd-tooltip="28个相关文章" href='https://www.dedegg.com/itdocs/smarty_382_1.html' title="smarty" target="_blank" class="b-r-4 wmd-text-small">smarty</a> <a wmd-tooltip="3个相关文章" href='https://www.dedegg.com/itdocs/xitongrizhi_381_1.html' title="系统日志" target="_blank" class="b-r-4 wmd-text-small">系统日志</a> <a wmd-tooltip="69个相关文章" href='https://www.dedegg.com/itdocs/shujujiegou_380_1.html' title="数据结构" target="_blank" class="b-r-4 wmd-text-small">数据结构</a> <a wmd-tooltip="59个相关文章" href='https://www.dedegg.com/itdocs/xigouhanshu_379_1.html' title="析构函数" target="_blank" class="b-r-4 wmd-text-small">析构函数</a> <a wmd-tooltip="79个相关文章" href='https://www.dedegg.com/itdocs/suijishu_241_1.html' title="随机数" target="_blank" class="b-r-4 wmd-text-small">随机数</a> <a wmd-tooltip="209个相关文章" href='https://www.dedegg.com/itdocs/digui_378_1.html' title="递归" target="_blank" class="b-r-4 wmd-text-small">递归</a> <a wmd-tooltip="1个相关文章" href='https://www.dedegg.com/itdocs/Referer_376_1.html' title="Referer" target="_blank" class="b-r-4 wmd-text-small">Referer</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.dedegg.com/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="/itstudy/" target="_blank">编程基础</a></li><li><a href="/itfiles/" target="_blank">编程教程</a></li><li><a href="/itask/" target="_blank">编程问答</a></li><li><a href="/itexp/" 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.dedegg.com/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备20019714号</a></a></span>   </div> </div> </div> <script type='text/javascript' src='https://www.dedegg.com/xwassets/js/jquery.cookie.js'></script> </footer> <!--手机端菜单--> <div class="wmd-app-footer-fixed wmd-app-footer wmd-hidden@s"> <a href="https://www.dedegg.com"> <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.dedegg.com" 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.dedegg.com">网站首页</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="/shtml/">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.dedegg.com/xwassets/js/index.js'></script> <style> .night .wmd-logo-nav-night{ background: url(https://www.dedegg.com/xwassets/images/flogo.png) no-repeat!important; background-size: 150px auto; } .night .wmd-app-logo2{ background: url(https://www.dedegg.com/xwassets/images/flogo.png) no-repeat!important; background-size: 92px auto!important; } #canvas { position: absolute; left: 0; top: 0; } </style> <script src="https://www.dedegg.com/xwassets/js/highlight.min.js?v=1"></script> <script src="https://www.dedegg.com/xwassets/js/prism.min.js?v=1"></script> <script src="https://www.dedegg.com/xwassets/js/prism.js?v=1"></script> </body> </html>