在AngularJS和lightGallery中加载更多按钮

赛特斯01

我在网站上使用lightGallery,我想在图库页面上添加一个“加载更多”按钮,主要是为了更快地在手机上加载。我找到了各种方法并进行了尝试。它们中的大多数不起作用和/或不适合我按要求加载元素的需要。

其中之一是AngularJS:

var DemoApp = angular.module("DemoApp", []);
DemoApp.controller("DemoController",

function DemoController($scope) {
    $scope.quantity = 0;
    $scope.temp = [];
    $scope.loadMore = function () {
        for (i = $scope.quantity; i <= $scope.quantity + 1; i++) {
            $scope.temp.push($scope.images[i]);
        }
        $scope.quantity = i;
    }

    $scope.images = [{
        "src": "https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13244856_238092939903469_3778800896503555327_n.jpg?oh=e539748b060ba0cb43852314e2fdef0b&oe=57F01511"
    }, {
        "src": "https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13263891_238096316569798_4073904852035872297_n.jpg?oh=91a76b3515ac628706b912fdd3e9a346&oe=585C3DD1"
    }, {
        "src": "https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13260007_238096336569796_6324932140560503740_n.jpg?oh=1795ba25c4604dced3cdcc91b9729cc7&oe=5820EE5A"
    }, {
        "src": "https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/12871473_238096353236461_8115646425269026926_n.jpg?oh=b8958326d24a1a649e6a40adf29b062b&oe=582BFD38"
    }, {
        "src": "https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13256520_238096376569792_9057528716929719317_n.jpg?oh=a6bc66f75992c88260ae35bd4dbc9ff1&oe=5856F934"
    }, {
        "src": "https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13254297_238096389903124_1429633590050411734_n.jpg?oh=5e8c94a0b6a77dea110704a5727e0ee5&oe=5819B551"
    }, {
        "src": "https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13267713_238096416569788_8740461856631991826_n.jpg?oh=739e3268996e498f65867b314265250b&oe=585E4C93"
    }];

    $scope.loadMore();
});

这是我的HTML标记:

<div class="col-xs-12">
<div ng-app="DemoApp" ng-controller="DemoController">
<div id="fotoalbum" class="col-thumb-wrap">

<div class="col-thumb" ng-repeat="image in temp" data-src="{{image.src}}">
<a href="{{image.src}}">
<i class="thumb" style="background-image: url({{image.src}});"></i>
</a>
</div>

</div>
<button class="btn btn-default" ng-click="loadMore()">Ik wil meer</button>
</div>
</div>

它可以自行操作“加载更多”按钮,但是它却破坏了l​​ightGallery本身。示例:http//cytex.nl/projects/jk-installaties/album2.php

然后我在这个StackOverflow问题中找到了使lightGallery与AngularJS一起使用的解决方案

我试图将两者结合起来,但仍然无法正常工作。现在lightGallery可以启动了,但是“加载更多”按钮没有任何作用!

示例:http//cytex.nl/projects/jk-installaties/album1.php

var DemoApp = angular.module('DemoApp', []);
DemoApp.controller('DemoController',
function DemoController($scope, $sce) {  
    $scope.total = 0;
  $scope.temp = [];
  $scope.loadMore = function () {
    for (x = $scope.total; x <= $scope.total + 1; x++) {
      $scope.temp.push($scope.photos[x]);
    }
    $scope.total = x;
  }

    $scope.photos = [{
        fullres: 'https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13244856_238092939903469_3778800896503555327_n.jpg?oh=e539748b060ba0cb43852314e2fdef0b&oe=57F01511'
    }, {
        fullres: 'https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13263891_238096316569798_4073904852035872297_n.jpg?oh=91a76b3515ac628706b912fdd3e9a346&oe=585C3DD1'
    }, {
        fullres: 'https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13260007_238096336569796_6324932140560503740_n.jpg?oh=1795ba25c4604dced3cdcc91b9729cc7&oe=5820EE5A'
    }, {
        fullres: 'https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/12871473_238096353236461_8115646425269026926_n.jpg?oh=b8958326d24a1a649e6a40adf29b062b&oe=582BFD38'
    }, {
        fullres: 'https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13256520_238096376569792_9057528716929719317_n.jpg?oh=a6bc66f75992c88260ae35bd4dbc9ff1&oe=5856F934'
    }, {
        fullres: 'https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13254297_238096389903124_1429633590050411734_n.jpg?oh=5e8c94a0b6a77dea110704a5727e0ee5&oe=5819B551'
    },{
        fullres: 'https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-9/13267713_238096416569788_8740461856631991826_n.jpg?oh=739e3268996e498f65867b314265250b&oe=585E4C93'
    }];

  $scope.loadMore();

    for (var i = 0; i < $scope.photos.length; i++) {
        $scope.photos[i].fullres = $sce.trustAsResourceUrl($scope.photos[i].fullres);
    }
})
.directive('lightgallery', function() {
  return {
    restrict: 'A',
    link: function(scope, element, attrs) {
      if (scope.$last) {
        element.parent().lightGallery({
            showThumbByDefault: false
        });
      }
    }
  };
});

我是AngularJS的新手,如果这是一个非常愚蠢的问题,我们感到抱歉。你们能帮忙找出问题所在,也许是如何解决这个问题的指针吗?

拉明·埃斯法哈尼(Ramin Esfahani)

将此代码片段追加到loadMore函数的最后一行

for (var i = 0; i < $scope.photos.length; i++) {
        $scope.photos[i].fullres =      $sce.trustAsResourceUrl($scope.photos[i].fullres);
    }

该部分应在每次向数组添加项时运行,这意味着该函数应在每次函数loadMore触发时运行希望这会有所帮助。问候。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在React中加载更多按钮

来自分类Dev

在Wordpress中加载更多帖子Ajax按钮-修复

来自分类Dev

在Wordpress中加载更多帖子Ajax按钮-修复

来自分类Dev

使用PHP和AngularJS加载更多注释

来自分类Dev

带有“加载更多”按钮和Circle ProgressBar的ListView

来自分类Dev

在AngularJS的文件夹中加载JavaScript和CSS文件

来自分类Dev

在惰性适配器和列表视图中加载更多项目

来自分类Dev

使用jQuery在容器中加载更多帖子

来自分类Dev

在ios中加载更多表视图

来自分类Dev

在Android的ListView中加载更多选项

来自分类Dev

加载更多按钮应该消失

来自分类Dev

android recyclerview加载更多按钮

来自分类Dev

jQuery加载更多并隐藏按钮

来自分类Dev

骨干集合。“加载更多”按钮

来自分类Dev

加载更多按钮应消失

来自分类Dev

需要帮助以正确方式编写代码以创建帖子的“加载更多”按钮和“喜欢”按钮

来自分类Dev

在AngularJS中加载图像目录

来自分类Dev

在AngularJS中加载异步数据

来自分类Dev

模板未在angularjs中加载?

来自分类Dev

无法在 Angularjs 中加载模块?

来自分类Dev

隐藏“加载更多:延迟加载中的按钮”

来自分类Dev

AngularJS加载更多功能

来自分类Dev

如何在angularjs中加载html和js期间放置加载器

来自分类Dev

Jekyll LightGallery如何在自己的DIV中加载图像,这对Bootstrap非常有用

来自分类Dev

实施“加载更多”按钮以在单击时加载更多元素

来自分类Dev

实施“加载更多”按钮以在单击时加载更多元素

来自分类Dev

WooCommerce CSS和Checkout按钮未在单个产品页面中加载

来自分类Dev

查看更多和更少按钮

来自分类Dev

使用Python和lxml进行清理时如何选择“加载更多结果”按钮

Related 相关文章

热门标签

归档