gpt4 book ai didi

javascript - 以编程方式打开 lightgallery.js

转载 作者:行者123 更新时间:2023-12-01 07:04:20 28 4
gpt4 key购买 nike

所以我正在使用 https://sachinchoolur.github.io/lightgallery.js/对于我的画廊来说,这太棒了。

当用户单击图像时,它会打开并且一切正常。

<div id="lightgallery">
<a href="img/img1.jpg">
<img src="img/thumb1.jpg" />
</a>
<a href="img/img2.jpg">
<img src="img/thumb2.jpg" />
</a>
...
</div>

<script type="text/javascript">
lightGallery(document.getElementById('lightgallery'));
</script>

但是,我有一个边缘情况,我希望用户能够按页面上的另一张图像来打开图库。

让我们假设这是一个标签

<a id="magic_start" href="">

我以为我能够做到这一点:

$("#magic_start").click(function(e) {
e.preventDefault();
$("#lightgallery li:first-child a").trigger();
});

我也尝试过,click()和trigger('click'),但它们不起作用。

我认为因为 lightgallery.js 是它自己的人,可以这么说。

但它什么也没做。没有错误,但什么也不做。

有什么建议吗?

编辑:

我当前的解决方法是...

window.location.href = window.location.href + "#lg=1&slide=0";
location.reload();

但是由于必须重新加载页面,这会影响用户体验。

最佳答案

需要在 img 元素上调用 trigger 函数,而不是外部 a 元素。

lightGallery(document.getElementById('lightgallery'));

$("#magic_start").on("click", () => {
$("#lightgallery a:first-child > img").trigger("click");
});
<!-- lightgallery and jQuery vendor CSS/JS -->
<link rel="stylesheet" href="https://cdn.rawgit.com/sachinchoolur/lightgallery.js/master/dist/css/lightgallery.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.rawgit.com/sachinchoolur/lightgallery.js/master/dist/js/lightgallery.js"></script>

<a id="magic_start" href="#">CLICK TO OPEN</a>

<div id="lightgallery">
<a href="https://via.placeholder.com/350">
<img src="https://via.placeholder.com/150" />
</a>
<a href="https://via.placeholder.com/350">
<img src="https://via.placeholder.com/150" />
</a>
</div>

关于javascript - 以编程方式打开 lightgallery.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54763807/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com