Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 背景图像幻灯片_Jquery_Css_Jquery Cycle - Fatal编程技术网

Jquery 背景图像幻灯片

Jquery 背景图像幻灯片,jquery,css,jquery-cycle,Jquery,Css,Jquery Cycle,我刚刚发现了CSS3背景大小:cover属性。现在,我想用幻灯片(例如jQuery循环)替换这个背景图像,而不会丢失浏览器所做的自动缩放。有没有简单的解决办法 我找到了答案,其中可能包含一个解决方案,但我不太确定如何调整它。我试图复制和粘贴下面的代码,但没有任何循环 jQuery.noConflict(); jQuery(document).ready(function($) { $(function() { $("#home").loadBGImage();

我刚刚发现了CSS3
背景大小:cover
属性。现在,我想用幻灯片(例如jQuery循环)替换这个背景图像,而不会丢失浏览器所做的自动缩放。有没有简单的解决办法

我找到了答案,其中可能包含一个解决方案,但我不太确定如何调整它。我试图复制和粘贴下面的代码,但没有任何循环

jQuery.noConflict();

jQuery(document).ready(function($) {
    $(function() {
        $("#home").loadBGImage();
        setInterval('$("#home").loadBGImage()', 5000); 
    });

    $.fn.loadBGImage = function() {
        var images = ["background1.jpg",
        "background2.jpg",
        "background3.jpg",
        "background4.jpg" ];

        var image = images[Math.floor(Math.random() * images.length)];

        return this.each(function() {
            var $obj = $(this);
            $obj.fadeOut(500,function() {
                $obj.css('background', 'url(../images/' + image + ')')
                    .fadeIn(500);
            });
        });
    };

});

好吧,问题是您使用了jQuery.noConflict();因此,在这种情况下,所有的$都必须替换为jQuery,如下所示

jQuery.noConflict();

jQuery(document).ready(function(jQuery) {
 jQuery(function() {
    jQuery("#home").loadBGImage();
    setInterval('jQuery("#home").loadBGImage()', 5000); 
 });

 jQuery.fn.loadBGImage = function() {
    var images = ["background1.jpg",
    "background2.jpg",
    "background3.jpg",
    "background4.jpg" ];

    var image = images[Math.floor(Math.random() * images.length)];

    return this.each(function() {
        var $obj = jQuery(this);
        $obj.fadeOut(500,function() {
            $obj.css('background', 'url(../images/' + image + ')').fadeIn(500);
        });
    });
 };

});

您在控制台中是否遇到任何类型的错误?工具>Web开发人员>错误控制台或用户快捷键Ctrl+Shift+JThanks。我知道$不是一个函数……用jQuery替换所有$是什么意思?全部的如上所述,我在其他jQuery脚本中使用了$,而不必用其他任何东西替换$。这是因为在代码中使用了jQuery.noConflict();当jquery的两个或多个文件发生冲突时使用。如果您引用的是jquery min的单个文件,那么请删除noConflict,它将按预期工作。