嗨,我正在使用轮播插件为我的主题视图实现水平滚动
页面上发生的事情是这样的:
1) 用户可以滚动到右边几页来搜索主题
2)用户点击他/她喜欢的话题
3)整个页面重新渲染即主题部分和下面的部分将全部重新渲染
4) 主题板块将被重置,主题滚动的第一页将再次显示
如何跟踪选择了轮播列表中的哪个项目,以便在重新呈现页面时显示它?另外,如何将滚动移动到正确的页面以显示所选主题?
我当前实现的片段如下:
//Appending topics in carousel plugin (question page view)
addAllTopics: ->
@options.topics.each(@addOneTopic)
Onethingaday.Public.checkActive(Backbone.history.fragment)
@$('li.all_topics').show()
$('#my-carousel').carousel({
itemsPerPage: 4,
itemsPerTransition: 4,
speed: 500,
noOfRows: 1,
nextPrevLinks: true,
pagination: true,
easing: 'swing'
})
addOneTopic: (topic) ->
if topic.get('question_count') > 0
$(@el).find('ul.topics').append @topic_template(topic.toJSON())
//individual @topic_template - on click on topic, the route of '/topics/topic_slug' will be triggered which rerenders the whole questions page
%li
%a{href: "/topics/<%= topic.slug %>", :'data-active' => "/topics/<%= topic.slug %>", slug: "<%= topic.slug %>", text: "<%= topic.text %>" } #<%= topic.slug %>