Как отфильтровать 2 jquery-скрипта для хеш-ссылок - PullRequest
0 голосов
/ 13 января 2011

У меня есть два jquery-скрипта на одной странице, которые оба предназначаются для ссылок на сайте через href = "# example" .. Один - слайдер контента, другой - "плавная прокрутка" для ссылок "toTop".проблема в том, что каждый раз, когда я нажимаю на ссылку навигации по слайдеру контента, экран перемещается вверх к верхней части контейнера слайдера.Я хочу избежать этого.Поэтому я попытался отфильтровать сценарий с плавной прокруткой с помощью операторов if, но пока не добился успеха ... может быть, у вас есть идеи?Заранее большое спасибо!

Вот jquery с плавной прокруткой:

$(document).ready(function() {
$('a[href*=#]').bind("click", function(event) {
    event.preventDefault();
    var ziel = $(this).attr("href");

            if ($.browser.opera) {
                var target = 'html';
            }else{
                var target = 'html,body';
            }

    $(target).animate({
        scrollTop: $(ziel).offset().top
    }, 1000 , function (){location.hash = ziel;});
});
return false;
});

и вот html слайдера контента:

<div id="Dienstleistungen">
                        <div class="left_column">
                        <h2>Meine Dienstleistungen</h2>
                        <h3>KOMPETENZEN</h3>
                        <ul id="AboutNav">
                            <li><h1><a href="#Kompetenzen" class="button1 active noScroll" rel="1" title="Frontend Entwicklung | Sebastian B&ouml;hme">&Uuml;berblick</a></h1></li>
                            <li><h1><a href="#Frontend" class="button2 noScroll" rel="2" title="Frontend Entwicklung | Sebastian B&ouml;hme">Frontend Entwicklung</a></h1></li>
                            <li><h1><a href="#CMS" class="button3 noScroll" rel="3" title="Content Management Systeme &amp; Online Shops | Sebastian B&ouml;hme">Content Management Systeme &amp; Online Shops</a></h1></li>
                            <li><h1><a href="#SEO" class="button4 noScroll" rel="4" title="Suchmaschinenoptimierung (SEO) | Sebastian B&ouml;hme">Suchmaschinenoptimierung (SEO)</a></h1></li>
                            <li><h1><a href="#ScreenDesign" class="button5 noScroll" rel="5" title="Screen Design | Sebastian B&ouml;hme">Screen Design</a></h1></li>
                            <li><h1><a href="#Hand" class="button6 noScroll" rel="6" title="Alles aus einer Hand | Sebastian B&ouml;hme">Alles aus einer Hand</a></h1></li>
                        </ul>
                        </div>

                        <div class="container">

                        <div id="Kompetenzen" class="aboutContent right_columns">
                            <h1>&Uuml;berblick</h1>
                            <p>Phasellus..</p>
                        </div>
                    <hr />
                        <div id="Frontend" class="aboutContent right_column ">
                            <h1>Frontend Entwicklung</h1>
                            <p>Phasellus..</p>
                        </div>
                    <hr />  
                        <div id="CMS" class="aboutContent right_column ">
                            <h1>Content Management Systeme &amp; Online Shops</h1>
                            <p>Phasellus..</p>
                        </div>
                    <hr />
                        <div id="SEO" class="aboutContent right_column ">
                            <h1>Suchmaschinenoptimierung (SEO)</h1>
                            <p>Phasellus..</p>
                        </div>
                    <hr />
                        <div id="ScreenDesign" class="aboutContent right_column ">
                            <h1>Screen Design</h1>
                            <p>Phasellus..</p>
                        </div>
                    <hr />
                        <div id="Hand" class="aboutContent right_column">
                            <h1>Alles aus einer Hand</h1>
                            <p>Curabitur..</p>
                        </div>
                        </div><!-- AboutSlider -->
                    </div><!-- Dienstleistungen -->

Ответы [ 2 ]

1 голос
/ 13 января 2011

Я вижу, что к вашим ссылкам навигации добавлен класс "noScroll", поэтому вы можете фильтровать по ним: $ ('a [href * = #]'). Not ('. NoScroll')

$(document).ready(function() {
$('a[href*=#]').not('.noScroll').bind("click", function(event) {
    event.preventDefault();
    var ziel = $(this).attr("href");

            if ($.browser.opera) {
                var target = 'html';
            }else{
                var target = 'html,body';
            }

    $(target).animate({
        scrollTop: $(ziel).offset().top
    }, 1000 , function (){location.hash = ziel;});

}); return false; });
0 голосов
/ 16 марта 2011

ОТ: Несколько Н1 на одной странице - это плохо!Вы не должны делать это в меню, а на странице это должен быть H2.

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