2016-09-28 56 views
-1

我怎样才能得到坐标从字符串:获取字符串的一部分,在JavaScript

<path fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" d="M275.843,110.301c-47.082,13.406-77.458,58.874-69.425,103.478 
     c4.241,23.548,16.136,42.268,38.639,52.408c4.728,2.13,10.717,1.457,16.125,2.08c25.394,2.925,46.609,15.095,66.295,30.378 
     c3.857,2.995,6.64,2.91,10.014-0.096c24.818-22.111,39.262-49.192,39.892-84.204c-0.189-2.728-0.244-6.743-0.775-10.694 
     c-5.566-41.427-27.104-72.584-61.608-95.299c-1.563-1.029-3.687-1.618-5.573-1.682 
     C298.075,106.287,286.912,107.148,275.843,110.301z"></path> 

我需要所有的坐标d="",所以我只需要数字:

M275.843,110.301c-47.082,13.406-77.458,58.874-69.425,103.478 
      c4.241,23.548,16.136,42.268,38.639,52.408c4.728,2.13,10.717,1.457,16.125,2.08c25.394,2.925,46.609,15.095,66.295,30.378 
      c3.857,2.995,6.64,2.91,10.014-0.096c24.818-22.111,39.262-49.192,39.892-84.204c-0.189-2.728-0.244-6.743-0.775-10.694 
      c-5.566-41.427-27.104-72.584-61.608-95.299c-1.563-1.029-3.687-1.618-5.573-1.682 
      C298.075,106.287,286.912,107.148,275.843,110.301z 

或我怎么能得到这个d的值。 Becouse目标回我这所有信息,但是当我写

target.d 

有什么事都没发生

回答

0

在香草的javascript:

document.getElementById('elementId').getAttribute('d'); 

使用jQuery使用.attr():

$('#elementId').attr('d'); 
+0

这是一个字符串,而不是一个HTML元素。 –

+0

这是来自点击事件的目标:event.target返回我“路径” – johnyT

0

用正则表达式做:

var myString = '<path fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" d="M275.843,110.301c-47.082,13.406-77.458,58.874-69.425,103.478c4.241,23.548,16.136,42.268,38.639,52.408c4.728,2.13,10.717,1.457,16.125,2.08c25.394,2.925,46.609,15.095,66.295,30.378c3.857,2.995,6.64,2.91,10.014-0.096c24.818-22.111,39.262-49.192,39.892-84.204c-0.189-2.728-0.244-6.743-0.775-10.694c-5.566-41.427-27.104-72.584-61.608-95.299c-1.563-1.029-3.687-1.618-5.573-1.682C298.075,106.287,286.912,107.148,275.843,110.301z"></path>'; 

var myRegexp = /d=\"(.*|\s)\">/g; 

var match = myRegexp.exec(myString); 

那么你想要的是:

match[1]