두 가지 스크립트가 있습니다. 하나는 AJAXing 효과 용 탐색 스크립트이고 다른 하나는 호버 효과입니다. 네비게이션을 변경 코드가 실행되면`load() '를 사용하여 페이지를 다시로드 한 후에`hover()`를 사용하여 바인딩 된 이벤트가 발생하지 않습니다.
<!--Band Images-->
<script type="text/javascript">
$(document).ready(function(band) {
var name = "";
$(".home-roll-box").hover(function() {
name = $(this).attr("id");
$("#image-" + name).stop().show().animate({
opacity: 1
});
}, function() {
name = $(this).attr("id");
$("#image-" + name).stop().animate({
opacity: 0
});
});
});
</script>
<!--/Band Images-->
<!--Navigation-->
<script type="text/javascript">
$.ajaxSetup({
cache: false
});
$('ul.navigation li a').click(function(nav) {
$('ul.navigation li.page_item.current_page_item').removeClass('current_page_item');
$('ul.navigation li.page_item a.active').removeClass('active');
$('#content-wrap').animate({
top: "-2000px"
}, 1000);
var targetPage = $(this).attr('href');
targetPage += " #content";
setTimeout(function() {
$('#content-wrap').load(targetPage, function() {
$('#content-wrap').animate({
top: "0px"
}, 1000);
});
});
$(this).addClass('active');
nav.preventDefault();
});
</script>
<!--/Navigation-->
, 다른 코드 (hover()
를 이용한 대역 이미지 바인딩 이벤트 핸들러)을 실행하지 못한다.
의견이 있으십니까?
는'window.setTimeout()는'적어도 두 개의 인수를 취합니다. 너는 하나만 지나가고있어. 어쩌면 그게 문제 야. –
나는 당신이 질문을 수정 한 이후에 같은 문제를 가진 다른 사람들을 도울 수 있도록 도와주었습니다. 희망을 가지지 마십시오 :). – Matt