鼠标离开后强制 gif 重新加载
Force gif to reload after mouse leave
在我的网站上,我有几张图片在鼠标悬停时通过 GIF 动画循环,当鼠标离开图片时 return 变为静态图片。
我希望 gif 在鼠标悬停时从第一帧开始播放。但是,如果我将鼠标悬停在图片上,然后将鼠标移开,然后再次悬停,图像将变为从上一帧继续的 gif。
这是我的 HTML 代码:
<img id="menugif">
我的CSS:
#menugif
{
padding-top: 15px;
height: 115px;
width: 125px;
content:url(../images/Hulk.png);
float: left;
}
#menugif:Hover
{
cursor:pointer;
content:url('../images/Hulk.gif');
float: left;
}
我将不胜感激任何解决方案,包括 Javascripts!谢谢大家:)
我认为 this tutorial 完全涵盖了您的情况,包括 CSS 和 Javascript 方面,即使您需要几个额外的库(jQuery 和字体太棒了)。
试试这个:
var img = document.getElementById('menugif');
img.addEventListener('mouseleave', function () {
this.style.content = this.style.content;
}, false);
这是修复它的一种廉价方法,但为了解决这个问题,我这样做了:
每个 HTML gif 都有自己的 ID:
<a id="single_image1" href="#"><img id="menugifHulk" src="images\hulk.png"></a>
每一个都有自己的风格,像这样:
#menugifHulk
{
padding-top: 15px;
height: 115px;
width: 125px;
float: left;
}
然后每个元素都有自己的JavaScript:
var img = document.getElementById('menugifHulk');
img.addEventListener('mouseleave', function () {
var imageUrl = img.src;
img.src = "";
img.setAttribute('src', 'images/Hulk.png');
}, false);
img.addEventListener('mouseover', function () {
img.setAttribute('src', 'images/Hulk.gif');
}, false);
java 在这样的函数中:
function GifReset()
{
var img = document.getElementById('menugifHulk');
img.addEventListener('mouseleave', function () {
var imageUrl = img.src;
img.src = "";
img.setAttribute('src', 'images/Hulk.png');
}, false);
img.addEventListener('mouseover', function () {
img.setAttribute('src', 'images/Hulk.gif');
}, false);
}
在我的网站上,我有几张图片在鼠标悬停时通过 GIF 动画循环,当鼠标离开图片时 return 变为静态图片。
我希望 gif 在鼠标悬停时从第一帧开始播放。但是,如果我将鼠标悬停在图片上,然后将鼠标移开,然后再次悬停,图像将变为从上一帧继续的 gif。
这是我的 HTML 代码:
<img id="menugif">
我的CSS:
#menugif
{
padding-top: 15px;
height: 115px;
width: 125px;
content:url(../images/Hulk.png);
float: left;
}
#menugif:Hover
{
cursor:pointer;
content:url('../images/Hulk.gif');
float: left;
}
我将不胜感激任何解决方案,包括 Javascripts!谢谢大家:)
我认为 this tutorial 完全涵盖了您的情况,包括 CSS 和 Javascript 方面,即使您需要几个额外的库(jQuery 和字体太棒了)。
试试这个:
var img = document.getElementById('menugif');
img.addEventListener('mouseleave', function () {
this.style.content = this.style.content;
}, false);
这是修复它的一种廉价方法,但为了解决这个问题,我这样做了:
每个 HTML gif 都有自己的 ID:
<a id="single_image1" href="#"><img id="menugifHulk" src="images\hulk.png"></a>
每一个都有自己的风格,像这样:
#menugifHulk
{
padding-top: 15px;
height: 115px;
width: 125px;
float: left;
}
然后每个元素都有自己的JavaScript:
var img = document.getElementById('menugifHulk');
img.addEventListener('mouseleave', function () {
var imageUrl = img.src;
img.src = "";
img.setAttribute('src', 'images/Hulk.png');
}, false);
img.addEventListener('mouseover', function () {
img.setAttribute('src', 'images/Hulk.gif');
}, false);
java 在这样的函数中:
function GifReset()
{
var img = document.getElementById('menugifHulk');
img.addEventListener('mouseleave', function () {
var imageUrl = img.src;
img.src = "";
img.setAttribute('src', 'images/Hulk.png');
}, false);
img.addEventListener('mouseover', function () {
img.setAttribute('src', 'images/Hulk.gif');
}, false);
}