Функция скрытия и скольжения jqueryui переходит наверх - PullRequest
0 голосов
/ 18 марта 2011

Привет, у меня возникли некоторые проблемы при использовании слайд внутри скрыть для jquery UI.Он всегда переходит наверх страницы, когда я нажимаю созданную мной вкладку.Я искал этот сайт для решения, связанного с моим, но, кажется, не нашел решения, так как мой немного отличается от других.ниже приведен код

 <ul id="about_navi">
        <li><span class="change_me selected" rel="first">About Us</span><span class="arrow_down"></span></li>
        <li><span class="change_me" rel="second">Meet The Team</span><span class="arrow_down"></span></li>
        <li><span class="change_me" rel="third">How We Work</span><span class="arrow_down"></span></li>
        <li><span class="change_me" rel="fourth">Client Testimonial</span><span class="arrow_down"></span></li>
        <li><span class="change_me" rel="fifth">Our Products</span><span class="arrow_down"></span></li>
        <div class="clr"></div>
    </ul>

, а вот javascript

$(function(){
    $(".change_me").click(function(){
           var class_name = $(this).attr("rel");
           if(($(".context").is(":hidden"))){
                $('.context:visible').hide("slide", { direction: "right" }, 600,function(event){
                    $("."+class_name).show("slide", { direction: "left" }, 600);

                });

                return false;
            }

    })

код подходит только для Firefox, на котором я полностью основывался, пока кто-то не сказал мне, что другой браузерЭта проблема.Заранее спасибо .Кстати, я использую jquery 1.4.3 и jqueryui 1.8.1

Ответы [ 2 ]

1 голос
/ 18 марта 2011

Мне удалось отладить проблему.Это разрешимо, если у div или span содержимого есть, по крайней мере, минимальная высота.

например, так как я использую класс "context", чтобы скрыть n show, у меня должен быть другой div / spanранее и укажите их css, чтобы иметь минимальную высоту, скажем ..... 500px.поэтому независимо от показа или скрытия, полоса прокрутки будет в лучшем виде, что означает не прыгать.

Надеюсь, я достаточно ясен с моим объяснением.спасибо.

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

Вы должны попробовать preventDefault()

$(".change_me").click(function( event ){

    event.preventDefault();

    // Your code...

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...