0

我觉得我非常接近解决这个问题,但遗漏了一些东西......我试图将多个 div 放置在我的图像地图上多个矩形区域形状的顶部和左侧位置之上。一切都可以追溯到我的控制台,但它没有将顶部和左侧位置设置为 div

以下是我到目前为止所拥有的,但我觉得我错过了一些东西……任何东西都可以挽救生命!

图片地图:

  <img id="map" src="assets/img/header_bg2.png" width="1345" height="534"  border="0" usemap="#neighbormap" />
  <map name="neighbormap" id="neighbormap">
   <areaclass="button" data-target="one" shape="rect" coords="335,239,376,282" href="#" />
   <area class="button" data-target="two" shape="rect" coords="401,116,438,155" href="#" />
   <area class="button" data-target="three" shape="rect" coords="493,7,536,42" href="#" />
 </map>

需要放置在区域形状的顶部和左侧位置上方的 div:

 <div class="container">
   <div class="one">one</div>
   <div class="two">two</div>
   <div class="three">three</div>
</div>

查询:

  $('#neighbormap').find('.button').each(function(index, element){
    var i, x = [], y = [];
    var c = $(this).attr('coords').split(',');
    var id = $(this).data('target')
    for (i=0; i < c.length; i++){
     x.push( c[i++] );
     y.push( c[i] );
    }
    var t = y.sort(num)[0];
    var l = x.sort(num)[0];

    $('.' + id).css({top: t, left: l, position:'absolute'});

    //console.log(t + ',' + l );

    function num(a, b){ return (a-b);
     }
})

更新:

我错过了“px”应该是这样的:

  $('.' + id).css({top : t +'px',left : l +'px'});
4

1 回答 1

0

我错过了“px”它应该是: $('.' + id).css({top : t +'px',left : l +'px'});

于 2013-07-11T22:21:52.960 回答