菜單通過ajax加載和懸停功能是關聯到每個李使用live()。但它仍然不是第一次觸發。從第二次起,它是正確觸發jQuery的懸停()沒有觸發時,第一次懸停
主文件
<html>
<head>
<title>
test
</title>
<script type='text/javascript' src='js/jquery-1.4.2.js'>
</script>
<script>
$(window).load(function() {
jQuery(document).ready(function() {
jQuery('.loadm').live('click', function(event) {
$.ajax({
type: "POST",
url: "loadmenu.php",
success: function(data) {
$('#menu').html(data);
},
error: function() {
}
});
});
jQuery('.addchar').live('hover', function(event) {
$('.addchar:visible').each(function(index) {
$(this).hover(function() {
$("#result").html("Index is: " + index);
});
});
});
});
});
</script>
</head>
<body>
<div id="content">
<form method="post">
<a href="#" class="loadm">Load Menu</a>
</form>
<div id="menu" style="width:100">
none
</div>
<div id="result">
</div>
</div>
</body>
</html>
菜單文件
<?php
echo "<ul><li class='addchar'>one </li>
<li class='addchar'>two </li>
<li class='addchar' style='display:none'> three</li>
<li class='addchar'>four </li>
<li class='addchar' style='display:none'> five</li>
<li class='addchar'>six </li>
<li class='addchar' style='display:none'> seven</li>
<li class='addchar'> eight</li>
<li class='addchar' style='display:none'> nine</li>
</ul>";
?>
@Tcwlm **。loadm **與錨標籤控制相關聯,並且是**靜態**在主頁面中,點擊事件與此控件相關聯,菜單通過ajax動態加載,問題在於加載菜單的懸停功能。 – kiranking 2011-02-04 20:26:03