【问题标题】:How to remove all images from a galleria gallery如何从画廊画廊中删除所有图像
【发布时间】:2014-03-25 18:20:51
【问题描述】:

我正在用 Galleria 建立一个动态画廊。这个想法是您单击产品类别并将相关照片加载到图库中。单击一个类别将首先删除当前位于图库中的所有图像,然后加载这些图像。我可以成功地动态加载新照片(如下),但我不知道如何首先摆脱所有当前的照片。

$("#category1").click(function(){
    var category1photos = [
       { image: 'images/products/photo1.jpg' },
       { image: 'images/products/photo2.jpg' }
    ];
    Galleria.get(0).push(category1photos);
});

【问题讨论】:

    标签: jquery galleria


    【解决方案1】:

    您不更改数据源并重新运行 Galleria 是否有特殊原因?

    Galleria datasource

    然后你就可以轻松更换图片了:

    var data = [
        { image: "/path/to/myimage1.jpg" },
        { image: "/path/to/myimage2.jpg" },
    ];
    
    var gallery = this; 
    gallery.load(data);
    

    数据是任何来源(JSON、数据属性等)

    【讨论】:

    • 非常优雅的解决方案。您不必处理添加/删除数据,只需告诉要引用哪个数据源。谢谢!
    • 你知道吗,我可能太早接受了这个答案。现在我收到此错误:Fatal error: Could not extract a stage height from the CSS. Traced height: 0px
    • 使用 .load 而不是 .run 修复了这个问题。以上编辑。
    【解决方案2】:

    从文档中检查:

    http://galleria.io/docs/api/methods/#manipulation

    $("#category1").click(function(){
        // This will remove all the photo from Galleria array: 
        Galleria.get(0).splice( 0, Galleria.get(0).length );
    
        var category1photos = [
           { image: 'images/products/photo1.jpg' },
           { image: 'images/products/photo2.jpg' }
        ];
        Galleria.get(0).push(category1photos);
    });
    

    【讨论】:

    • 这不太对。它正在清除整个画廊,但又将旧画廊添加回来。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多