首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应用模态放大

问应用模态放大
EN

Stack Overflow用户
提问于 2019-02-07 10:57:04
回答 2查看 35关注 0票数 0

欢迎光临。

嗨。我一直在把这个模式enter link description here应用到我的网站中。已经得到了这个结果。

但不知何故,它只适用于第一张图片。

如何才能将其应用于其余图片(图片总数将是动态的,因此nvm)。

这是我的代码。

代码语言:javascript
复制
<div class="main-content2">

<ul id="thumbnails">
    <asp:ListView runat="server" ID="IDGallery_Upl" ItemPlaceholderID="GalleryImg"
        DataSourceID="gridgallery">
        <LayoutTemplate>
            <li runat="server" id="GalleryImg"></li>
        </LayoutTemplate>
        <ItemTemplate>
            <li>

                    <img id="myImg" src="Image/05 Galeri/<%# Eval("GalleryImg") %>" width="200" height="150" alt="<%# Eval("nmGallery") %>"  />
            </li>
        </ItemTemplate>
    </asp:ListView>
    </ul>

<div id="myModal" class="modal">
      <span class="close">&times;</span>
      <img class="modal-content" id="img01" />
      <div id="caption"></div>
    </div>


    <asp:SqlDataSource ID="gridgallery" runat="server" ConnectionString="<%$ ConnectionStrings:BackboneConnectionString %>" 
        SelectCommand="SELECT [IDGallery_Upl], [nmGallery], [GalleryImg] FROM [EL_MstGallery] where sts_delete = '0'">
    </asp:SqlDataSource>

​

代码语言:javascript
复制
<script type="text/javascript">
            // Get the modal
            var modal = document.getElementById('myModal'); //IDGallery_Upl

            // Get the image and insert it inside the modal - use its "alt" text as a caption
            var img = document.getElementById('myImg');
            var modalImg = document.getElementById("img01"); // how do I assgn GalleryImg ?
            var captionText = document.getElementById("caption"); //how do I assign nmGallery ?
            img.onclick = function() {
                modal.style.display = "block";
                modalImg.src = this.src;
                captionText.innerHTML = this.alt;
            }

            // Get the <span> element that closes the modal
            var span = document.getElementsByClassName("close")[0];

            // When the user clicks on <span> (x), close the modal
            span.onclick = function() {
                modal.style.display = "none";
            }
        </script>

谢谢

EN

回答 2

Stack Overflow用户

发布于 2019-02-07 14:07:10

看看我在Codepen中创建的工作样例,我没有添加任何aspx代码。您提供的代码只适用于一个图像,因为它使用document.getElementById('myImg')。尽管您有一个图像列表,但图像的ids是相同的(“myImage”)。因此,给定的javascript代码只适用于第一张图像。

谢谢。

票数 0
EN

Stack Overflow用户

发布于 2019-02-07 16:10:19

我之前所做的一点研究就是在这个问题上找到一些非常相似的东西。

Modal image galleries - multiple images

希望它能派上用场。

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

https://stackoverflow.com/questions/54565645

复制
相关文章

相似问题

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