Я создаю веб-сайт с использованием рамки sammy.js. У меня есть боковая панель, которая является постоянной, и основной контент, который загружает разные страницы с помощью sammy. На боковой панели у меня есть ссылки на новостные статьи. В настоящее время любая ссылка на боковую панель просто загружает маршрут #/news. Но я бы хотел, чтобы он загружал маршрут и прокручивался до статьи. Я попытался использовать триггер привязки, когда маршрут загружен, чтобы перейти к статье, но я получаю ошибки в приложении sammy. Любые мысли о том, как это можно сделать?Прокрутите страницу привязки в проекте Sammy.js
2
A
ответ
5
Похоже на старый вопрос, но так как он по-прежнему без ответа ....
Вы должны определить свой URL в качестве регулярного выражения, и позволяют дополнительно закладку хэш в конце этого:
get(/#\/news(#.+)?/, function() {
var articleId = this.params['splat'];
});
Это будет соответствовать любому из следующих маршрутов:
- #/новости
- #/новости #
- #/новости # мои-новости-статьи
Затем вы должны быть в состоянии использовать ArticleID, чтобы найти соответствующий элемент и вручную прокручивать. например в последнем маршруте выше, «ArticleID» будет «# мой-новости-статьи», поэтому с помощью JQuery вы могли бы сделать что-то вроде:
var $article = $(articleId);
$(document.body).animate({ scrollTop: $article.offset().top });
});
Надежда, что помогает.