当前位置: 首页 > 知识库问答 >
问题:

滑块图像id

公冶弘壮
2023-03-14

我有一个小问题,一个小jQuery脚本,我的幻灯片图像。该脚本本身工作得非常好,其目的是在图像之间滚动,实际上是“淡入淡出”,这是一部经典之作。

问题是,如果我想将它用于页面上的另一个块,那么它将不再正常工作。。问题当然出在id上,但无法解决。

这是脚本:

function slider() {

    function animate_slider(){
        $('.slider #'+shown).animate({
            opacity:0 // fade out
        },1000);
        $('.slider #'+next_slide).animate({
            opacity:1.0 // fade in
        },1000);
        //console.log(shown, next_slide);
        shown = next_slide;
    }

    function choose_next() {
        next_slide = (shown == sc)? 1:shown+1;
        animate_slider();
    }

    $('.slider #1').css({opacity:1}); //show 1st image
    var shown = 1;
    var next_slide;
    var sc = $('.slider img').length; // total images
    var iv = setInterval(choose_next,3500);
    $('.slider_nav').hover(function(){
        clearInterval(iv); // stop animation
    }, function() {
        iv = setInterval(choose_next,3500); // resume animation
    });
    $('.slider_nav span').click(function(e){
        var n = e.target.getAttribute('class');
        //console.log(e.target.outerHTML, n);
        if (n=='prev') {
            next_slide = (shown == 1)? sc:shown-1;
        } else if(n=='next') {
            next_slide = (shown == sc)? 1:shown+1;
        } else {
            return;
        }
        animate_slider();
    });
}

window.onload = slider;

有什么想法吗?谢谢大家:)

共有1个答案

闻人花蜂
2023-03-14

我不确定你想做什么,但如果你想重复使用:

编辑:我已经修改假设你的2幻灯片是独立的

这是一个快速的解决方案,正如@davidbarker所提到的,使用jQuery插件会更干净

JS:

var sliderTop = "#slider.top";  
var sliderBottom = "#slider.bottom";


 function slider(el) {

    function animate_slider(el){
        $(el + shown).animate({
            opacity:0 // fade out
        },1000);
        $(el + next_slide).animate({
            opacity:1.0 // fade in
        },1000);
        //console.log(shown, next_slide);
        shown = next_slide;
    }

    function choose_next(el) {
        next_slide = (shown == sc)? 1:shown+1;
        animate_slider(e);
    }

    $(el + ' #1').css({opacity:1}); //show 1st image
    var shown = 1;
    var next_slide;
    var sc = $(el + ' img').length; // total images
    var iv = setInterval(choose_next,3500);
    $(el + '_nav').hover(function(){
        clearInterval(iv); // stop animation
    }, function() {
        iv = setInterval(choose_next,3500); // resume animation
    });
    $(el + '_nav span').click(function(e){
        var n = e.target.getAttribute('class');
        //console.log(e.target.outerHTML, n);
        if (n=='prev') {
            next_slide = (shown == 1)? sc:shown-1;
        } else if(n=='next') {
            next_slide = (shown == sc)? 1:shown+1;
        } else {
            return;
        }
        animate_slider(el);
    });
}
window.onload = function() {
    slider(sliderTop);
    slider(sliderBottom);
}

超文本标记语言:

<div id="slider" class="top">
    <h2>Nos partenaires</h2>
    <img id="1" src="" alt="">
    <img id="2" src="" alt="">
    <img id="3" src="" alt="">
</div>
<div class="slider_nav">
    <span class="prev">Précédent</span><!--
    --><span class="next">Suivant</span>
</div>

<div id="slider" class="bottom">
    <h2>Nos partenaires</h2>
    <img id="1" src="" alt="">
    <img id="2" src="" alt="">
    <img id="3" src="" alt="">
</div>
<div class="slider_nav">
    <span class="prev">Précédent</span><!--
    --><span class="next">Suivant</span>
</div>
 类似资料:
  • 问题内容: 有一行可以一次只容纳三个图像,但是我在服务器中有几个图像,我想全部取走。所以在这种情况下,我需要图像滑块。 让说,有10幅图像,例如和行和它包含只有三个非常久远。我想要的是?单击slider_button时,图像应沿按钮方向一一向前。假设,如果我点击则应该行,而不是。因此,有一幅图像被转发到左方向,而另一幅新图像被提取为 请给我一些提示。我想从服务器获取图像会更有用,对吗? 问题答案:

  • 我需要帮助。我有一个简单的jQuery滑块,它工作得很好,但我无法弄清楚这种情况:例如,如果我有4个图像,当我到达第四个图像时,我希望能够通过单击'Next'按钮从第四个图像转到第一个图像。我怎么能那样做? null null

  • 上面有一个包含滑块的内容框。内容框的纵横比为1/.52。我的目标是在每张幻灯片上有一个不同的背景图像,内容覆盖在图像上。背景图像还必须通过web访问,所以设置背景图像css属性似乎不起作用。#LargeCarouselContent中的每个div都是一个幻灯片。当前的解决方案不起作用,因为canvas1.jpeg覆盖所有幻灯片。我被难住了,有什么主意吗?

  • 我如何才能实现在android图像滑块,显示下一个和上一个图像的某些部分,如在图像中所示。 谢谢你的任何帮助。

  • 我是一个非常基本的网站开发和启动这个网站 http://teammurdertrain.com/ 我下载并安装了一个模板,还有一个滑块。我已经在帖子中设置了我的特色图像,但返回的代码中不会添加任何内容。 它试图从这里得到图像。目前回声没有回音 回声get_post_meta($post- 你会注意到,目前在该网站上,iphone包装内的图像。这是因为它目前是硬编码的

  • 在jQuery图像滑块中添加暂停按钮的最佳方法?我想添加暂停点击橙色方形形状按钮,这是作为一个计时器在我的图像滑块。 这里是我尝试的链接。 http://jsfidle.net/qnzdx/4/ 为了更好地理解我正在添加参考站点,在这里我们可以找到暂停功能点击橙色方形形状。https://store.sap.com/sap/cpa/repository/store/sapstore/us/defa