jquery 图像旋转器(仅在 JS 中传递图像)

jquery image rotator (Pass image in JS only)

本文关键字:图像 JS 仅在 旋转 jquery      更新时间:2023-09-26

我正在尝试构建所有JQuery图像旋转器。

我知道简单的jquery滑块/旋转器,但我只想在JS中传递图像文件。

我不想这样做

 <div id="slider">
    <div class="content"><p>blah</p></div>
    <div class="content"><p>blah</p></div>
    <div class="content"><p>blah</p></div>
</div>

例如,我有这个简单的文本旋转器。现在我想用图像文件替换文本。

我的文本旋转器是这样的:

jQuery(document).ready(function($) {$.fn.cycle = function(arr, options) {
    var settings = {
        'delay': 2000,
        'transitionDuration': 500,
        'transitionEasing': 'swing'
    };
    if (options) $.extend(settings, options);
    return this.each(function(ndx, el) {
        $(el).data('cycle:i', 0);
        setInterval(function(el, settings, arr) {
            $(el).fadeOut(settings['transitionDuration'], settings['transitionEasing'], function() {
                var t = $(this);
                var i = t.data('cycle:i');
                i = i == arr.length - 1 ? 0 : i+1;
                t.data('cycle:i', i)
                    .html(arr[i])
                    .fadeIn(settings['transitionDuration'], settings['transitionEasing']);
                });
        }, settings['delay'], el, settings, arr);
    });
};

称呼它像

$('#textcontainer').cycle(['onetext', 'twotext', 'threetext', 'fourtext']);

现在我想在这里传递图像

$('#imagecontainer').cycle(['one.png', 'two.png', 'three.png', 'four.png']);

在JS中需要哪些修改?

更新:

在混沌的建议下,我更新了代码。这是JSFIDDLEhttp://jsfiddle.net/n5XLf/

文本写入 DOM 的代码行是

 .html(arr[i])

您只需要将其切换到

 .html('<img src="' + arr[i] + '"/>')

这会将图像加载到容器中(假设输入数组是实际图像位置的数组)