JQuery конфликтует - .load и намерение зависания - PullRequest
0 голосов
/ 29 марта 2011

Я пытаюсь запустить эти два отдельных сценария на одном сайте. Вот как они выглядят:

<script type="text/javascript">
$(document).ready(function() {

        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() {
        $('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'); 
        return false;
    });
</script>

Они оба работают индивидуально, но не вместе. Кажется, это return false; внизу второго скрипта, который вызывает проблемы.

1 Ответ

0 голосов
/ 29 марта 2011

Попробуйте добавить параметр evt в ваш обработчик кликов и затем вызвать

evt.preventDefault();

Вот хорошее описание различий: http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/

...