2014-10-31 38 views
0

我得到了這個網站:通過class和id的jQuery顯示DIV組合

<img src="pics/delete.png" class="showdelete" style="position: absolute; display: none" id="1" 
<img src="pics/delete.png" class="showdelete" style="position: absolute; display: none" id="2" 
<img src="pics/delete.png" class="showdelete" style="position: absolute; display: none" id="3" 

而且這個jQuery至今:

function showdelete(z){ 
    var show = $(z).attr('id'); 
} 

讓說的變種是2.如何將代碼看起來完全以show class showdelete與id 2?

編輯

好吧,我從下面的解決方案,但試圖隱藏它再次鼠標離開

我tryed: HTML:

<div class="profilfotos" id="' . $row["id"] . '" onmouseover="showdelete(this)" mouseleave="hidedelete(this)"> 

和jQuery:

function hidedelete(z){ 
    var show = $(z).attr('id'); 
    $('img[class=showdelete][id='+show+']').hide(); 
} 
+0

該死的應該是OnMouseLeave在代替你爲什麼會想一個ID選擇帶班 – user2966167 2014-10-31 06:52:25

回答

0

試試這個:您可以使用jquery attribute selector顯示DIV

function showdelete(z){ 
    var show = $(z).attr('id'); 
    $('img[class=showdelete][id='+show+']').show(); 
} 

編輯 - 您可以編輯您的腳本像下面的工作

function showdelete(z){ 
    var show = $(z).attr('id'); 
    $(".showdelete#"+show).show(); 
} 

id必須是唯一的,那麼你應該直接使用id選擇顯示元素直到除非你沒有任何這樣的要求使用類選擇器也

function showdelete(z){ 
     var show = $(z).attr('id'); 
     $("#"+show).show(); 
    } 
+1

,是的,你是對的,直到除非OP具有類特定元素的任何特殊要求。我已經更新了我的答案。謝謝:) – 2014-10-31 06:12:09

+0

@ArunPJohny結合鼠標離開的xD – 2014-10-31 06:16:29

+0

這不起作用,這可能是因爲ID包含像「234234.jpg」等點? Arun,因爲相同的ID屬於多個類 – user2966167 2014-10-31 06:23:01

0

如果v AR是2,這意味着$(z)是目標元素,所以沒有必要弄的ID,你可以只使用參考z顯示元素

function showdelete(z){ 
    //no need to get the id 
    //var show = $(z).attr('id'); 
    $(z).show() 
} 

注:元素的ID必須是唯一的在文檔中

+0

哦,我在多個類中有相同的ID,所以這是不允許的? – user2966167 2014-10-31 06:26:16