2012-05-17 171 views
0
更換一些值

我有以下的html代碼:與超鏈接使用jQuery

<table id="MatrixTable"> 
    <tr> 
     <td id="321"> 0 </td> 
    </tr> 
</table 

答:我如何可以替換的超鏈接的「0」文本時,鼠標懸停使用jQuery像下面這樣:

<table id="MatrixTable"> 
    <tr> 
     <td id="321"> 
      <a class="modal-dialog-link" href="Edit?matrixID=321" updatefunction="UpdateMatrix"> 
       0 
      </a> 
     </td> 
    </tr> 
</table> 

$("table#MatrixTable td").mouseover(function() { 
    // doing something here... 
}); 

B.我怎麼能回到原來的「0」時,鼠標離開與jQuery像下面這樣:

$("table#MatrixTable td").mouseleave(function() { 
    // doing something here... 
}); 

釷anks。

+0

爲什麼你希望他們只能與鼠標懸停鏈接。這在我眼中是沒有意義的。 – HerrSerker

回答

0

您可以使用hover綁定的事件處理程序mouseentermouseleave事件,您可以使用wrapunwrap包裹在a元素的內容:

​$("#321").hover(function() { 
    $(this).contents().wrap("<a>"); 
}, function() { 
    $(this).find("a").contents().unwrap(); 
});​​​​​ 

這是working example。檢查DOM,將鼠標懸停在元素上以查看更改。

這似乎是一個非常奇怪的方式來使用鏈接雖然......爲什麼不能鏈接總是在DOM中?

+0

我需要這個,因爲我有一個大約有2500個元素的表格。如果我定義每個鏈接我有一個360Kb的HTML。如果我只設置一個值並用jQuery定義鏈接,我有一個130Kb的html。它會讓人感覺到嗎? – Bronzato

+0

謝謝你們。 – Bronzato

1

使用jQuery.hover

$("table#MatrixTable #321").hover(function() { 
    $(this).html('<a class="modal-dialog-link" href="Edit?matrixID=321"'+ 
      'updatefunction="UpdateMatrix">0</a>'); 
},function(){ 
    $(this).text('0'); 
});