2016-04-16 2 views
-1

мне было интересно, как я хотел бы использовать этот метод:Используйте jQuery attr для прокрутки к данным?

$('[data-jump-spy]').each(function(){ 
    var dataObj = .data('jump-spy'); 
    $(this).onclick ({ 
       scrollTop: $("#" + dataObj).offset().top(); 
    }); 
}); 

прикрепить его к ссылке, как так:

<a href="javascript:void(0);" data-jump-spy="divContentThatsFarDownPage">Who we are</a> 
.... 
.... 
.... 
.... 
<div class="box radius box-grey --animate" id="divContentThatsFarDownPage"> 
    .... 
</div> 

Окончательное решение может быть найдено ниже

Этом функция позволит вам легче кодировать ваш сайт. Просто введите <div class="whatever iconArrow-to-Content LinkText-to-Content Img-to-Content" data-jump-spy="page-content"

$('[data-jump-spy]').each(function(){ 
    var dataObj = $(this).data('jump-spy'); 
    $(this).click(function() { 
     $("html, body").animate({ 
      scrollTop: $("#" + dataObj).offset().top 
     }, 1000); 
    }); 
}); 
+1

Используйте '.click()' 'не .onclick()' – Mottie

+1

Что такое '» .data() "'? – evolutionxbox

+0

мне было интересно, о точке dataObj, будучи таким же, как это. Конечно, это не так ... просто имя var сбило меня с толку. dataObj - это STRING. Кроме того, что, если цель имеет только класс? Тогда вам лучше быть помещая # или. внутри ваших данных и вынимая его из строки scrolltop. – yezzz

ответ

2

Несколько изменений

$('[data-jump-spy]').each(function(){ 
    var dataObj = $(this).data('jump-spy'); // needs $(this) at beginning since .data needs to run on some object 
    $(this).click(function(){ // used click instead of onclick and you need to pass a function as an argument 
       $('html,body').animate({scrollTop: $("#" + dataObj).offset().top}); // use .top instead of .top() as it is a property and not a method 
    }); 
}); 
+0

. Я не понимаю, почему .top() вызывает ошибки? –

+0

@RBStudios пропустил это. Он должен быть '.top' а не '.top()', поскольку это просто свойство, а не метод. Используйте [документацию jquery] (https://api.jquery.com/), это очень подробно. –

+0

@RBStudios, похоже, что вы пропали без вести. Как и где применять 'scrollTop'. обновил код. –

Смежные вопросы