这是测试页
http://www.studioteknik.com/html/test-portfolio.html
我没有错误,但没有悬停滑动效果...
任何人都有线索?
更新,molf已经解决了问题,这是绝对的位置,但是,现在,当文本显示时,下面的链接是不可克服的
更正后的页面位于:http://www.studioteknik.com/html/test-portfolio3.html
答案 0 :(得分:3)
您应该更新CSS,确保.image img
绝对定位:
.image img {
position: absolute; // added
height: 100%;
width: 100%;
}
这将使幻灯片正常工作。但是,图像将显示在周围的div
之外。要解决此问题,请将overflow: hidden
属性添加到.image
:
.image {
// ...
overflow: hidden; // added
}
更新:鉴于在上面的解决方案中你最终得到背后的 .image div
(即使用不可点击的链接),你最好幻灯片 而非图片。而不是上述内容,请执行以下操作:
.box {
// ...
overflow: hidden; // added
}
在你的javascript中:
$('div.box').hover(function() {
$(this).find(".image").animate({top:'200px'},{queue:false,duration:500});
}, function() {
$(this).find(".image").animate({top:'0px'},{queue:false,duration:500});
});
请注意,我们现在正在追踪hover
上的div.box
事件,并向下滑动div.image
。
答案 1 :(得分:0)
适用于
position:relative;
但是你需要将你的JS改为:
$('div.webpreview').hover(....);
因为页面中没有“class”类的div:)
对于可点击链接:
型:
.webpreview img {
height: 100%;
position:relative;
overflow:hidden;
width: 100%;
z-index:100;//note this
}
.box .linkDiv{
top:-300px;
position:absolute;
overflow:hidden;
z-index:200;
}
JS:
$(document).ready(function() {
$('div.box').hover(
function(){
$('div.webpreview',$(this)).find("img").animate(
{top:'200px'},{queue:false,duration:1000});
$("div.linkDiv", $(this)).animate({top:'0px'},
{queue:false, duration:500});
},
function(){
$('div.webpreview',$(this)).find("img").animate(
{top:'0px'},{queue:false,duration:1000});
$("div.linkDiv",$(this)).animate({top:'-300px'},
{queue:false, duration:500});
}
);
});
HTML:
<div class="box">
<div class="linkDiv">
<strong>Client :</strong> Sous le charme des érables<strong><br>
Manda : </strong>Conception et réalisation<br>
<strong>Adresse : <a href="http://www.souslecharme.ca/"
target="_blank">www.souslecharme.ca</a></strong>
</div>
<div class="webpreview"><img src="test-portfolio_files/souslecharme.jpg"></div>
</div>
您也可以通过更改包含链接的div的 z-index 来执行此操作:
$('div.box').hover(
function(){
$('div.webpreview',$(this)).find("img").animate(
{top:'200px'},{queue:false,duration:1000});
$("div.linkDiv", $(this)).css("z-index","200");
},
function(){
$('div.webpreview',$(this)).find("img").animate(
{top:'0px'},{queue:false,duration:1000});
$("div.linkDiv", $(this)).css("z-index","50");
});