2010-02-19 80 views
2

我試圖採用一個mouseover的id並刪除ID的一部分,只留下我需要採取行動的核心文本。從變量jquery中刪除字符串的一部分

我的鼠標懸停會返回一個id,如「nevadaActiveArea」,但我需要操縱該字符串到「內華達州」。我已經運行過的所有搜索都說明了如何在某些元素的內容上做到這一點,但我只需要在變量中使用文本。我如何實現這一目標?

基於喬希斯托多拉的回答

最終代碼:

$("area").mouseover(function(){ 
    var overID = $(this).attr("id"); 
    if(overID.indexOf("ActiveArea") >= 1){ 
     id = overID.substring(0, overID.indexOf("ActiveArea")); 
    }else if(overID.indexOf("Hotspot") >= 1){ 
     id = overID.substring(0, overID.indexOf("Hotspot")); 
    } 

    $("#"+id).show(); 
}); 
+0

你有什麼控制ID名稱?您需要確保它以某種形式保持一致。這也是很高興有某種類型的分隔符字符來修剪內華達,activeArea – 2010-02-19 18:04:08

+0

我可以添加一個分隔符,如果它可以簡化的事情。我實際上有兩個可能的字符串刪除。有些是nevadaActiveArea,有些是nevada熱點。我可以很容易地將ID轉換爲內華達州ActiveArea和內華達州熱點。 – 2010-02-19 18:10:13

回答

4

鑑於所有的ID在「ActiveArea」結束了,你可以做到這一點使用子和的indexOf ...

$("#nevadaActiveArea").mouseover(function() { 
    var id = $(this).attr("id"); 
    id = id.substring(0, id.indexOf("ActiveArea")); 
    alert(id); 
}); 
+0

應該提到這一點 - 我實際上有兩個可能的字符串刪除。有些是nevadaActiveArea,有些是nevada熱點。我試着在一個上運行,並且運行得很完美,但是當我將它運行回來時,它破壞了它。 – 2010-02-19 18:08:25

+0

用這個算出其餘部分,用答案編輯我的問題 – 2010-02-19 18:37:08

相關問題