我正在使用Scrollify插件。我想在单击按钮时移动到某个部分。但是,当我将sectionName
设置为false
时,它似乎无效。当sectionName
未设置为false
时,它工作正常,但我不希望在我的地址栏上看到#,因为当我刷新/重新加载页面时(例如,在第3部分)滚动,它滚动到下一部分(从第1部分到第4部分)。
当sectionName
为false
时,有没有办法移动到特定部分?
这是我到目前为止所做的事情:
JS
$('.goNotify').click(function (e) {
e.preventDefault();
$.scrollify.move($(this).attr("href"));
});
HTML
<a href="#notify" class="goNotify">
<button id="btnDrive" class="btnNotif" type="button" name="btnDrive" title="Get Notified When Available">Get Notified When Available</button>
</a>
<section id="notify" class="panel" data-section-name="notify">
<!-- content -->
</section>
谢谢! :)
答案 0 :(得分:0)
您需要将要移动的部分的索引传递给move方法。
答案 1 :(得分:0)
当然,所以我遇到了同样的问题,并通过这段代码绕过它:
$("a.scrollify").on("click",function() {
$.scrollify.move( getScrollifySectionIndex( $(this).attr("href") ) );
});
« getScrollifySectionIndex »方法解析href并返回面板索引:
function getScrollifySectionIndex(anchor){
var idpanel = false;
jQuery('section.panel').each(function(i){
if( jQuery(this).data('section-name') == anchor.toString().replace(/#/g,"") ){
//console.log( jQuery(this).data('section-name') , i , anchor.toString().replace(/#/g,"") );
idpanel = i;
}
});
return idpanel;
};
它非常好用:)