1

我得到了以下代码来实现:

<script type="text/javascript">

  $(document).ready(function(){
    $('.hotspots a').bind('mouseover click', function() {
      $this = $(this);
      if($('.hotspot-target').data('hotspot')!=$this.attr('href')) {
        $('.hotspot-target').data('hotspot', $this.attr('href'));

        $('.hotspot-target').fadeOut(100, function() {
          $('.hotspot-target').css({backgroundImage: 'url('+$this.attr('href')+')'});
          $('.hotspot-target .detail').hide();
          $('.hotspot-target .detail.'+$this.attr('class')).show();

          $('.hotspot-target').fadeIn(100);
        });
      }
      return false;
    })
  });
</script>

它在 FF 和 Chrome 中运行良好,在控制台中没有错误。我在 IE 调试器中也看不到任何错误,尽管我不太习惯它是如何工作的。

上面的代码有什么明显的错误吗?它位于页面的末尾

4

1 回答 1

0

怎么样:

$(document).ready(function(){
    $('.hotspots a').bind('mouseover click', function() {
        var hotSpotTarget = $('.hotspot-target'),
            value = this.href,
            cssClass = this.className;

        if(hotSpotTarget.data('hotspot') != value) {
            hotSpotTarget.data('hotspot', value);

            hotSpotTarget.fadeOut(100, function() {
                hotSpotTarget.css('background-image', 'url(' + value+ ')');
                hotSpotTarget.find('.detail').hide().filter('.' + cssClass).show();
                hotSpotTarget.fadeIn(100);
            });
        }
        return false;
    })
});

演示:http: //jsfiddle.net/2F9VW/1/

于 2012-09-12T11:13:24.437 回答