2012-05-07 74 views
1

我有以下圖像映射代碼。使用位置座標值

<area shape="rect" coords="213,109,320,256" href="embedded-processors" alt="Embedded Processor" class="embeded-processor" /> 

我可以檢索屬性COORDS它返回「213109320256」,對位置的div我要在此基礎上COORDS DIV位置。 頂部值爲213,左邊爲109px。

我怎樣才能檢索到的每個值並將其保存在本地變量。

回答

3
var coord = area.getAttribute('coords').split(','); 

這將創建的所有coords值的數組。然後您可以通過coord[0]coord[1]訪問最大值。

1

什麼Sirko貼是不是jQuery的,所以這裏jQuery的解決方案:

var coords = $.map($('.embeded-processor').attr('coords').split(','), parseInt) 

你得到的是整型數組:[213, 109, 320, 256]

+0

爲什麼它必須是jQuery的? –

+0

它不會,但「Wazdesign」也將此問題標記爲jQuery。此外,我的答案給了他一個整數列表而不是字符串。 – dav1d

0
<div> 
    <p> 
     Click on the sun or on one of the planets to watch it closer:</p> 
    <img src="images/Cart.png" width="145" height="126" alt="Planets" usemap="#planetmap" /> 
    <span id="dataval">0,0</span> 
    <map name="planetmap" id="planetmap" class="planetmap" runat="server"> 

    </map> 
</div> 
jQuery('#planetmap area').each(function (e) { 
    jQuery(this).mousemove(function() { 
     jQuery('#dataval').html(jQuery(this).attr('coords')); 
     jQuery(this).click(function() { 
      jQuery(this).attr('title', 'SHASHANK'); 
      var current_cordinate = jQuery(this).attr('coords').split(','); 
      var nextX = Math.ceil(current_cordinate[2]) + 1; 
      var NextY = Math.ceil(current_cordinate[3]); 
      var downX = Math.ceil(current_cordinate[2]) + 1; 
      var downY = Math.ceil(downX) + 1; 

      //var new_next_coordinate = jQuery(this).attr('coords', ('0,0,' + nextX + ',' + NextY)) 
      //alert(new_next_coordinate.text()); 
      jQuery(jQuery(this).find('coords','0,0,'+nextX+','+NextY)).attr('title', 'SHASHANK'); 
      alert("SUBMIT"); 
     }); 
    }); 
});