2015-06-08 3 views
0

Всякий раз, когда я подаю этот код почему ссылка вдруг перескакивает на О без прокрутки эффекта, как перейти к ссылке без прыжков

$("#start1").click(function(e) { 
    e.preventDefault(); 
    var section = this.href, 
     sectionClean = section.substring(section.indexOf("#")); 

    $("html, body").animate({ 
     scrollTop: $(sectionClean).offset().top 
    }, 1000, function() { 
     window.location.hash = sectionClean; 
    }); 
}); 

HTML-код здесь

<a href="#about" id="start1" class="scroll"style="text-decoration:none;position:absolute;right:145px;top:30px;font-weight:bold;color:white;font-size:15px;display:block;" onmouseover="big(this)" onmouseout="small(this)">ABOUT US</a> 

и

<div id="about" style="position:absolute;top:1311px;width:1348px;height:657px;background-color:black;opacity:0.9;z-index:-999;display:block;"> 

Нужно ли мне скачать любой плагин? Пожалуйста, помогите я новичок в этом

+0

Включили ли вы 'jQuery'? –

+0

нет, как это сделать .. На самом деле я знаю некоторые эффекты, но не правильно. В большинстве случаев я следил за инструкциями, написанными, чтобы что-то сделать ... Могу ли вы помочь мне? –

+1

Добавьте это в свой раздел вашей html-страницы: '', а затем следуйте приведенным ниже ответам. –

ответ

0

У меня есть использовать класс (».scroll ') для этого, если вы хотите использовать идентификатор, то ID $ (' # Начало1')

Попробуйте это:

$('.scroll').click(function() { 
    // your code. 

    $("html, body").animate({ 
     scrollTop: $(sectionClean).offset().top 
    }, 1000, 'swing', function() { 
     window.location.hash = sectionClean; 
    }); 
}); 

«Размах» предназначен для ослабления. За дополнительной информацией обращайтесь к http://api.jquery.com/animate/.

+0

его не работает, все еще его прыгает ... мне также нужно скачать плагины ????? –

+0

Не нужно добавлять плагин с помощью jquery. – Prasanna

+0

Нет, он снова прыгает :( –

0

Похоже, вы не завернули этот код в $ (document) .ready() . Не видя всего своего кода, я бы не знал, действительно ли это реальный случай, но дайте ему уйти.

$(document).ready(function() { 
    $("#start1").click(function (e) { 
     e.preventDefault(); 
     var section = this.href, 
      sectionClean = section.substring(section.indexOf("#")); 

     $("html, body").animate({ 
      scrollTop: $(sectionClean).offset().top 
     }, 1000, function() { 
      window.location.hash = sectionClean; 
     }); 
    }); 
}); 

JSFiddle

+0

попробовал это, но в нем прыгал .. Нужно ли загружать плагины ??? –

+0

На самом деле, ваш работает отлично https : //jsfiddle.net/dcw52fqL/ вы разместили этот код в готовой обертке документа? – George

+0

Да, он работает отлично в jsfiddle, но не на моей странице –

0

Это поздний ответ, но вы должны вернуться к ложному щелчку, чтобы отменить распространение ссылок и позволяя свитки работать нормально.

$('.element').click(function(){ 
    //your code 

    return false; 
}); 
Смежные вопросы