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