jQuery Cycle addSlides “alt”

发布于 2024-11-25 08:54:59 字数 1946 浏览 1 评论 0 原文

我找不到我的问题的答案。我认为这是一个很小的问题,但我现在脑子里有些疙瘩。

我需要

  • 用于样式化的元素,但在 < 之前使用 &lt;li&gt; 时,将 alt 属性添加到特定元素 (#c11) 的功能似乎不起作用code> 虽然没有它看起来也不错。
  • 你能帮助我吗 ?

    这是我的 JS:

    $(document).ready(function() { 
    
    $('#slideshow1').cycle({ 
        fx:      'scrollHorz', 
        auto: false,
        before:   onBefore,
        prev:    '#prev',
        next:    '#next',
        timeout:  0,
        sync: 1,
        speed: '100',
        pagerAnchorBuilder: pagerFactory,
        after:     function() {
        $('#c1').html(this.alt);
        }
    }); 
    
    var slidesAdded = false; 
    function onBefore(curr, next, opts) { 
        if (!opts.addSlide || slidesAdded) 
            return; 
        opts.addSlide('<li><img src="loadimages/1.jpg" width="800" height="560"  alt="Beach 1" /></li>'); 
        opts.addSlide('<li><img src="loadimages/2.jpg" width="800" height="560"  alt="Beach 2" /></li>'); 
        opts.addSlide('<li><img src="loadimages/3.jpg" width="800" height="560"  alt="Beach 3" /></li>'); 
        opts.addSlide('<li><img src="loadimages/4.jpg" width="800" height="560"  alt="Beach 4" /></li>'); 
        slidesAdded = true; 
    }; 
    function pagerFactory(idx, slide) {
        var s = idx > 2 ? ' style="display:none"' : '';
        return '<li'+s+'><a href="#">'+(idx+1)+'</a></li>';
    };
    

    这是 html:

     <div style="text-align:center;margin:auto;width:300px">
        <a href="#"><span id="prev">Prev</span></a> 
        <a href="#"><span id="next">Next</span></a>
    </div>
    
    <div id="slideshow1" class="pics"> 
     <li><img src="loadimages/1.jpg" width="800" height="560" alt="Beach 1"  /></li>
     <li><img src="loadimages/4.jpg" width="800" height="500" alt="Beach 2" /> </li>
    
    </div> 
    

    I don't find an answer for my problem. I think it's a very small one, but I have some knots in my brain currently.

    I need <li> elements for styling but the function to add the alt attribute to a specific element ( #c11 ) does not appear to work when using <li> before <img> while it seems fine without.

    Can you help me ?

    Here is my JS:

    $(document).ready(function() { 
    
    $('#slideshow1').cycle({ 
        fx:      'scrollHorz', 
        auto: false,
        before:   onBefore,
        prev:    '#prev',
        next:    '#next',
        timeout:  0,
        sync: 1,
        speed: '100',
        pagerAnchorBuilder: pagerFactory,
        after:     function() {
        $('#c1').html(this.alt);
        }
    }); 
    
    var slidesAdded = false; 
    function onBefore(curr, next, opts) { 
        if (!opts.addSlide || slidesAdded) 
            return; 
        opts.addSlide('<li><img src="loadimages/1.jpg" width="800" height="560"  alt="Beach 1" /></li>'); 
        opts.addSlide('<li><img src="loadimages/2.jpg" width="800" height="560"  alt="Beach 2" /></li>'); 
        opts.addSlide('<li><img src="loadimages/3.jpg" width="800" height="560"  alt="Beach 3" /></li>'); 
        opts.addSlide('<li><img src="loadimages/4.jpg" width="800" height="560"  alt="Beach 4" /></li>'); 
        slidesAdded = true; 
    }; 
    function pagerFactory(idx, slide) {
        var s = idx > 2 ? ' style="display:none"' : '';
        return '<li'+s+'><a href="#">'+(idx+1)+'</a></li>';
    };
    

    and here’s the html:

     <div style="text-align:center;margin:auto;width:300px">
        <a href="#"><span id="prev">Prev</span></a> 
        <a href="#"><span id="next">Next</span></a>
    </div>
    
    <div id="slideshow1" class="pics"> 
     <li><img src="loadimages/1.jpg" width="800" height="560" alt="Beach 1"  /></li>
     <li><img src="loadimages/4.jpg" width="800" height="500" alt="Beach 2" /> </li>
    
    </div> 
    

    如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

    扫码二维码加入Web技术交流群

    发布评论

    需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

    评论(1

    栖竹 2024-12-02 08:54:59

    使用 jQuery,可以在 figure 标记的 figcaption 内设置 Alt 标记的样式。这是一个小提琴(https://jsfiddle.net/0Lqxb4cp/),可能看起来像这样

    .img-fluid { width: 100%; }
    figure { display:block; position: relative; }
    
    figcaption { display: block; }
    

    : HTML:

    <figure>
        <img class="img-fluid" src="image.png" alt="This content will be appended inside the Figure Caption tag!">
    </figure>`
    

    后面是这个 jQuery:

    <script src="js/jquery.js"></script>  
    <script>
    $('img', 'figure').each(function() {
            $(this).parent().append('<figcaption>' + this.alt + '</figcaption>');
        });
    </script>
    

    Using jQuery it's possible to style the Alt tag inside a figure tag's figcaption. Here's a fiddle (https://jsfiddle.net/0Lqxb4cp/) which might look something like this:

    .img-fluid { width: 100%; }
    figure { display:block; position: relative; }
    
    figcaption { display: block; }
    

    Using this HTML:

    <figure>
        <img class="img-fluid" src="image.png" alt="This content will be appended inside the Figure Caption tag!">
    </figure>`
    

    Followed by this jQuery:

    <script src="js/jquery.js"></script>  
    <script>
    $('img', 'figure').each(function() {
            $(this).parent().append('<figcaption>' + this.alt + '</figcaption>');
        });
    </script>
    
    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文