我在頁面上有一些圖像和一些跨度文本。每個圖像都有他的文本,並且這些元素通過javascript來動態添加。動態html圖像和跨度上的jquery onmouseover()函數
現在,我想在鼠標懸停在圖像上時顯示正確的消息。
這是不容易解釋,因此,這裏的例子:
var len = article_affiliations.length;
for (var affiliation_id = 0; affiliation_id < len; affiliation_id++)
{
$('#country_warning' + affiliation_id).mouseover(function() {
document.getElementById('country_warning_message' + affiliation_id)
.style.visibility = 'visible';
}).mouseout(function() {
document.getElementById('country_warning_message' + affiliation_id)
.style.visibility = 'hidden';
});
}
的問題是,當的onmouseover函數將被調用時,affiliation_id將有最大值和消息將接近顯示最後一張圖片,而不是附近的圖片。
非常感謝您的幫助。
您可能想要了解JavaScript關閉 – Musa 2012-07-19 15:03:30
Hi Ana,因爲Musa提到您需要在for循環中使用閉包。有一個很棒的SO帖子解釋你的問題和解決方案:http://stackoverflow.com/questions/750486/javascript-closure-inside-loops-simple-practical-example – 2012-07-19 20:23:57
謝謝@Musa。 – 2012-07-20 06:48:37