首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >按下按钮时未加载内容

按下按钮时未加载内容
EN

Stack Overflow用户
提问于 2019-09-06 02:11:00
回答 2查看 62关注 0票数 1

我正在尝试创建一个只显示前几个项目的长列表。我想通过点击按钮来加载更多的内容。我已经找到了我要找的东西,然而,由于一些奇怪的原因,它不能与li项一起工作。

我知道这种方法效率不高,可以用ajax或者php来实现。然而,我的客户不希望我使用ajax和php。他计划让我创建的网站完全离线/本地。

下面是我正在使用的: See the Pen Load more content with jQuery by Mahmoud Elmahdi (@elmahdim) on CodePen.

">CodePen

代码语言:javascript
复制
/*
	Load more content with jQuery - May 21, 2013
	(c) 2013 @ElmahdiMahmoud
*/

$(function() {
  $(".test li").slice(0, 4).show();
  $("#loadMore").on('click', function(e) {
    e.preventDefault();
    $(".test.li:hidden").slice(0, 4).slideDown();
    if ($(".test.li:hidden").length == 0) {
      $("#load").fadeOut('slow');
    }
    $('html,body').animate({
      scrollTop: $(this).offset().top
    }, 1500);
  });
});
代码语言:javascript
复制
.test ul {
  width: 100%;
  height: auto;
  background: red;
}

.test li {
  display: none;
  padding: 10px;
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: #fff;
  box-shadow: 0 1px 1px #ccc;
  margin-bottom: 5px;
  background-color: #f1f1f1;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<dic class="test">
  <ul>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>

  </ul>

  </div>


  <a href="#" id="loadMore">Load More</a>

编辑:修复了将html中的类链接到css和js的问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-09-07 15:40:59

将此代码放在代码的位置

代码语言:javascript
复制
$(function () {
    $("li").slice(0, 4).show();
    $("#loadMore").on('click', function (e) {
        e.preventDefault();
        $("li:hidden").slice(0, 4).slideDown();
        if ($("li:hidden").length == 0) {
            $("#load").fadeOut('slow');
        }
        $('html,body').animate({
            scrollTop: $(this).offset().top
        }, 1500);
    });
});
代码语言:javascript
复制
.test ul {
  width: 100%;
  height: auto;
  background: red;
}

.test li {
  display: none;
  padding: 10px;
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: #fff;
  box-shadow: 0 1px 1px #ccc;
  margin-bottom: 5px;
  background-color: #f1f1f1;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<dic class="test">
  <ul>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>
    <li> item?</li>

  </ul>

  </div>


  <a href="#" id="loadMore">Load More</a>

票数 4
EN

Stack Overflow用户

发布于 2019-09-06 02:23:59

在加载时隐藏最后几个元素,并在单击loadmore后在其上显示它。使用jquery隐藏和显示方法。

代码语言:javascript
复制
/*
	Load more content with jQuery - May 21, 2013
	(c) 2013 @ElmahdiMahmoud
*/   

$(function () {
    $(".test li:hidden").slice(0, 4).show(500);
    $("#loadMore").on('click', function (e) {
      $(".test li:hidden").slice(0, 4).show(500);
    });
});
代码语言:javascript
复制
.test ul{width:100%; height:auto; background:red;}
.test li{
    display:none;
    padding: 10px;
    border-width: 0 1px 1px 0;
    border-style: solid;
    border-color: #fff;
    box-shadow: 0 1px 1px #ccc;
    margin-bottom: 5px;
    background-color: #f1f1f1;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div class="test">
  <ul>
    <li> item?</li>
     <li> item?</li>
        <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>    <li> item?</li>
     <li> item?</li>
    
    </ul>
  
  </div>


<a href="#" id="loadMore">Load More</a>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57810962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档