【问题标题】:Script change the pictures. In the finished code脚本更改图片。在完成的代码中
【发布时间】:2013-02-22 20:07:51
【问题描述】:

你好! 如何制作非常简单的动画。 在这段代码中? 例如,图片每 5 秒更换一次。

现在我只做了一个。必然需要一个预加载器。

这是原文。 http://www.htmldrive.net/items/show/1080/jQuery-useful-preload-image-effect

我删除了所有不必要的。我只留下了预加载器和加载图片“script.js”。 同样在网站上,我只有“javascript & jquery”。 我删除了:https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js

感谢您的帮助。 谢谢。

    #img_url{
    border: 0 none;
    height: 44px;
    width: 614px;
    vertical-align: top;
    margin-right: 0;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-repeat: no-repeat;
}
#load_img{
    border: 0 none;
    color: #363636;
    font-weight: bold;
    height: 33px;
    text-shadow: 0 1px 0 #C5C4C4;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    cursor: pointer;
    background-attachment: scroll;
    background-color: #1F8BCC;
    background-image: none;
    background-repeat: no-repeat;
    background-position: 0 0;
}
#image_content{
    width: 614px;
    height: 944px;
    text-align: center;
    overflow: hidden;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    position: absolute;
    left: -7px;
    top: 66px;
}
#img_holder{
    height:944px;
    width:614px;
    margin:0 auto;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
}
#img_holder img{
    max-width: 614px;
    max-height: 944px;
}
.loadit{background:url("/images/ajaxload.gif") no-repeat scroll center center transparent;}
.credit{font-size:12px;}

下一个博迪

  <div id="image_content">
<div id="img_holder" class="loadit"></div>
<div id="img_url" class=""></div>
</div>

和 JAVA

$(function(){
    LoadImage();
    $("#load_img").click(function(){
        $("#current_img").remove();
        $('#img_holder').addClass('loadit');
        LoadImage();
    });
    function LoadImage(){
        var img_url = $("#img_url").val();
        if(img_url == ''){
            img_url = "images/01.png";
        }
        var img = new Image();
        $(img).load(function(){
            $(this).hide();
            $('#img_holder').removeClass('loadit').append(img);
            $(img).fadeIn();

        }).attr('src',img_url).attr('id','current_img');
    }
});

有这样的代码。如何制作不断变化的图像? 预加载和下一个播放图像:

"images/01.png", "images/02.png";

我认为我们在谈论不同的事情...再次感谢您。

【问题讨论】:

  • 可以使用带有嵌入图像的 css sprite 或 svg 图像并简单地更改偏移量

标签: javascript jquery gallery preloader


【解决方案1】:

要在特定间隔检查中进行函数调用:http://www.w3schools.com/jsref/met_win_setinterval.asp

构建一个方法,加载一个 img 并在图像加载完成时显示它。

threadID = setInterval(LoadImage, 3000);  //Calls your method every 3 seconds.

使用 clearInterval 你可以阻止它。

clearInterval(threadID);

例如

$(document).ready( function () {
   var threadID = setInterval(loadAndDisplayImage, 5000);

   $('button#stop').click(function() {
      clearInterval(threadID);
   });
});

function loadAndDisplayImage() {
   //Code to load and display image;
}

希望这对我有所帮助。

//编辑:

如果您像这样存储图像:

图像-1 图像-2 image-3

你可以这样做:

var imageCounter = 0; //imagecounter in global scope
var imageBaseUrl = "http://yourfilehost/image-";
function loadAndDisplayImage() {
    var image = new Image();
    image.onload = displayOnLoad; //function that displays your images;
    image.src = imageBaseUrl + imageCounter ++ ;

    //maybe set up limit
    if(imageCounter >= 5){
        imageCounter = 0;
    } 
}

【讨论】:

  • 谢谢。我不使用通话按钮。代码中的这个片段我不使用。我不明白如何链接两个 URL 地址并在计时器上显示图像。示例:img_url = "preload_image/images/me-banner.png";等
  • 您可以将图像 url 存储在一个数组中,并在间隔方法中进行迭代。或者正如 technosaurus 提到的那样,使用 css sprite 并在每个间隔调用中更改位置
  • 我解释了新的这个问题的主题。如果不难向我展示我的代码示例。我不是专家。谢谢。
猜你喜欢
  • 1970-01-01
  • 2018-05-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-16
  • 2015-12-21
  • 2022-06-29
  • 1970-01-01
相关资源
最近更新 更多