我正在尝试更改 DIV 中的背景图像,想法是在鼠标悬停时将静态图像 .png 更改为 .gif,我不知道为什么它在我的机器上使用 MAMP 工作,但是当我将我的服务器放在 Hostgator 中时,我的代码不起作用,控制台中出现的错误是:TypeError: undefined is not an object (evaluating 'background.replace')
我的 html 是:
<ul class="items" id="lista1">
<li>
<div class="bg-img" id="featured" id="featured" style="background-image: url('img/thumbs/tb_nesfit.png');">
<div class="bgshadow_thumb" id="fshadow"></div>
<div class="text-thumb">
<div class="bottom">Cookies Nesfit</div>
</div>
</div>
<a href="project.php?job=nesfit-cookies">
<div class="content">
<div class="content-info">
<button class="ico"><i class="fa fa-play"></i></button>
<h2>Cookies Nesfit</h2>
<h3><span class="category">Animação, Simulação</span> | 2018</h3>
</div>
<div class="content-buttons">
<button class="ico"><i class="far fa-heart"></i></button>
<button class="ico"><i class="far fa-clock"></i></button>
<button class="ico"><i class="fa fa-ellipsis-h"></i></button>
</div>
</div>
</a>
</li>
</ul>
我的 jquery 是:
$('li').mouseover(function() {
var background = $(this).find("div#featured").css('background-image');
background = background.replace('.png','.gif');
$(this).find("div#featured").css('background-image', background);
//var background = $(this).find("div#featured").css('background-image');
//background = background.replace('.png','.gif');
//$(this).find("#featured").css('background-image', background);
});
我在这个 div 上方有一个带阴影的层,所以我将 mouseouver 放在
JSFiddle 我的代码:
最佳答案
$(this).css('background-image', 'url(/images/client_box_grad.gif)');
您应该确保您指定了一个有效的图片 url。
关于jquery - 我正在尝试使用 jQuery 更改背景图像,它可以在我的本地机器上使用,但不能用于在线服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54359148/