0

基本上,我想要这种功能但不那么复杂: http: //www.blueacorn.com/team/

我有一个 ul 的各种 li 包含图片,这些图片将仅链接到 LinkedIn 帐户(而不是 Twitter,就像示例中一样)。我希望当您将鼠标悬停在其中一张图片上时,jQuery 动画将在其上显示一个图像,您将能够单击它转到他们的 LinkedIn。(最终这些都将是不同人的照片。)

这是我的 JFiddle:http: //jsfiddle.net/h5y64/

如果可能的话,我不想为每个盒子创建一个 id,因为我将拥有 40 多个(并且还在增长)。

我的主要问题是:

1)我无法让 divHover 在我悬停的图片上正确设置动画(它到处都是!)

2) 我无法让 divHover 链接到不同的网页。

我确信有一种方法可以让我动态地做到这一点,但我无法弄清楚。

顺便说一句,这个问题很相似,但依赖于为每个块创建一个 id:How to position a hover div based on the position of the element

我真的找不到一个很好的例子(我能理解)。但是这个问题很难描述,所以也许我错过了。

我对 jQuery 还是很陌生,所以如果可能的话,请降低你的答案。:)

提前致谢!

4

3 回答 3

1

我已经做了一个简单的例子来说明我将如何做到这一点。就像在 blueacorn 上一样,我提前为每个 li 添加了叠加层,因此可以有多个可见。(如果一个还在向下滑动,其他人可以同时向上滑动)。

您的 HTML 中也存在一些问题,例如aaround li,这是不允许的。

这是我的例子:

演示:

http://jsfiddle.net/bYcmc/

HTML:

<ul>
    <li>
        <div>
            <img src="http://w3schools.com/css/klematis.jpg" />
            <a href=""></a>
        </div>
        <h6>Name 1</h6>
    </li>
    .
    .
    .
</ul>

JS:

$('li').hover(function() {
    $(this).find('a').stop().animate({
        'top': '0%'
    }, 300);
}, function() {
    $(this).find('a').stop().animate({
        'top': '100%'
    }, 300);
})​
于 2012-10-02T21:32:00.067 回答
0

我会在这个 JSFiddle中采用这种方法。需要注意的重要部分是缩略图的相对定位和 divHovers 的绝对定位。另外,请注意如何创建多个悬停元素,每个缩略图一个。

编辑:我还通过将<li>元素直接嵌套在 中<ul>,然后从那里嵌套锚标记来使 HTML 正确。

于 2012-10-02T21:41:53.307 回答
0

下面的代码可以根据您的要求完美运行。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Scroll - Up - Down</title>
    <!-- SCRIPTS -->
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script type="text/javascript">
    $(document).ready(function(){

        $(".scroll-up-down li").mouseover(function(){
            $(this).find("span.hover-link").show();
        });

        $(".scroll-up-down li").mouseout(function(){
            $(this).find("span.hover-link").hide();
        });


    });
    </script>
    <!-- SCRIPTS -->

    <!-- STYLES -->
    <style type="text/css">

        body                        { background:#CCC; font-family:Arial, Helvetica, sans-serif; }
        h1                          { font-size:16px; text-align:center; }
        .scroll-up-down             { border:1px dashed #bbb;  margin:0 auto; padding:0; text-align:center; width:400px; }
        .scroll-up-down li          { display:inline-block; list-style:none; margin:10px; position:relative; text-align:center; width:100px; z-index:999; }
        .scroll-up-down li span.hover-link              { background:url(hover-div.png) no-repeat;
                                                          border:5px solid #000;
                                                          color:#FFF;
                                                          font-size:12px;
                                                          font-weight:bolder;
                                                          display:none;
                                                          height:60px; 
                                                          left:0;
                                                          list-style:none;
                                                          padding-top:40px; 
                                                          position:absolute; 
                                                          filter: alpha(opacity=50);
                                                          opacity: 0.5;
                                                          text-align:center;
                                                          top:0; 
                                                          vertical-align:bottom;
                                                          width:100px; 
                                                          z-index:1000; 

                                    }
        .scroll-up-down li span.hover-link a.linkedin-icon { background:url(linked-icon.png) no-repeat 0 -50px;  display:inline-block; height:40px; width:40px; }
        .scroll-up-down li span.hover-link a.linkedin-icon:hover { background-position:0 0;   display:inline-block; height:40px; width:40px; }
        .scroll-up-down li a span   { font-size:12px; }
        .scroll-up-down li a        { display:inline-block; text-decoration:none; }
        .scroll-up-down li a img    { border:5px solid #000; height:100px;  width:100px; }

    </style>
    <!-- / STYLES -->
</head>

<body>
    <h1> User Profiles Grid</h1>
    <ul class="scroll-up-down">

        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Mr. ABC</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>

        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Ms. PQR</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>

        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Mr. XYZ</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>


        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Ms. LMN</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>

        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Mr. DEF</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>

        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Mr. JKL</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>


        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Ms. RST</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>

        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Mr. QWE</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>

        <li><a href="mylinkedin.php"><img src="mysteryman.jpg" alt="mystery-man" title="mystery-man" /><span>Mr. YUI</span></a>
        <span class="hover-link"><a href="http://www.linkedin.com/in/aratibhandare" class="linkedin-icon">&nbsp;</a></span>
        </li>


    </ul>
</body>
</html>
于 2012-10-03T11:25:08.720 回答