0

我做了一个简单的网站: 网站截图

我的问题是,当用户悬停在小圆圈上时,我希望打开灰色span#te1和紫色。span#tre1span#punkt1

我正在寻找使用 CSS3 或 jQuery 的解决方案。如果该过程有一点延迟,那就太好了。

我的html:

<span id="tre1"></span>
<span id="te1"></span>
<span id="punkt1"></span>

我的 CSS:

#tre1 {
    position: absolute;
    top: 105px;
    left: 61.5%;
    width: 0;
    height: 0;
    border-bottom: 100px solid #CCC;
    border-right: 150px solid transparent;
}

#te1 {
    position: absolute;
    top: 205px;
    left: 61.5%;
    background-color: #939;
    width: 150px;
    height: 150px;
}

#punkt1 {
    position: absolute;
    top: 60px;
    left: 60%;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    background-color: #4ec461;
}
4

2 回答 2

2

考虑到你有所有需要的 CSS 用于小 cricles 和灰色、紫色图像..使用hover()..

 $(function(){
   $('#te1,#tre1').hide();
   $('#punkt1').hover(function(){
      $('#te1,#tre1').show('slow');
   },function(){
      $('#te1,#tre1').hide('slow');
   });
 });

有一点动画

 $('#te1,#tre1').stop().slideDown('slow'); //<--to show;
  $('#te1,#tre1').stop().slideUp('slow'); //<--to hide;

这里的例子小提琴

但是请确保您有具有相同 id 的单个元素.. id 应该始终是唯一的。看起来您有多个具有相同 id 的元素(小圆圈)..

于 2013-06-21T09:47:19.733 回答
1

您可以像这样将#tre1 和#te1 保持在单独的跨度中,

<span class="punkt1">
    <span id="tre1"></span>
    <span id="te1"></span>
</span>

然后这样做

$("#punkt1").hover(function () {
    $(".punkt1").show(600);
}, function () {
    $(".punkt1").hide(600);
})

测试链接

更新:

.delay()是的,您可以在您之前添加一个.hide()

测试链接

于 2013-06-21T09:50:31.310 回答