在以下网站(https://skayan.de/misc/example/)上,两个按钮链接到一个称为右侧的部分:“更多信息”向下滚动到内容部分(“某些内容”),“联系”向下滚动到下部区域网站(此处为)。在桌面上,锚点链接有效,但在移动设备上,出现上述错误。
这是代码:
var lastToogle = null;
$(document).ready(function(){
"use strict";
$('a#go-contact').on( "click", function() {
if (lastToogle === null || $(".overlay").hasClass("skew-part")) {
// open
$(".overlay").removeClass("skew-part");
$("#right-side").removeClass("hide-right");
$("#close-more-info").removeClass("hide-close");
$('.mCSB_scrollTools').addClass('mCSB_scrollTools-left');
$("#mcs_container").mCustomScrollbar("scrollTo", "#contact-form",{
scrollInertia:500,
callbacks:false
});
lastToogle = 'go-contact';
} else if (lastToogle === 'go-contact'){
// close
$(".overlay").addClass("skew-part");
$("#right-side").addClass("hide-right");
$("#close-more-info").addClass("hide-close");
$('.mCSB_scrollTools').removeClass('mCSB_scrollTools-left');
lastToogle = null;
} else {
// scroll to
$("#mcs_container").mCustomScrollbar("scrollTo", "#contact-form",{
scrollInertia:500,
callbacks:false
});
lastToogle = 'go-contact';
}
});
$('a#open-more-info').on( "click", function() {
if (lastToogle === null || $(".overlay").hasClass("skew-part")) {
// open
$(".overlay").removeClass("skew-part");
$("#right-side").removeClass("hide-right");
$("#close-more-info").removeClass("hide-close");
$('.mCSB_scrollTools').addClass('mCSB_scrollTools-left');
$("#mcs_container").mCustomScrollbar("scrollTo", "#right-side",{
scrollInertia:500,
callbacks:false
});
lastToogle = 'open-more-info';
} else if (lastToogle === 'open-more-info'){
// close
$(".overlay").addClass("skew-part");
$("#right-side").addClass("hide-right");
$("#close-more-info").addClass("hide-close");
$('.mCSB_scrollTools').removeClass('mCSB_scrollTools-left');
lastToogle = null;
} else {
// scroll to
$("#mcs_container").mCustomScrollbar("scrollTo", "#right-side",{
scrollInertia:500,
callbacks:false
});
lastToogle = 'open-more-info';
}
});
$('button#close-more-info').on( "click", function() {
$(".overlay").addClass("skew-part");
$("#right-side").addClass("hide-right");
$("#close-more-info").addClass("hide-close");
$('.mCSB_scrollTools').removeClass('mCSB_scrollTools-left');
setTimeout(function() {
$("#mcs_container").mCustomScrollbar("scrollTo", "#right-side",{
scrollInertia:500,
callbacks:false
});
}, 350);
});
尝试更改此块:
$("#mcs_container").mCustomScrollbar("scrollTo", "#right-side",{
scrollInertia:500,
callbacks:false
});
对此:
$('html,body').animate({
scrollTop: $("#right-side").offset().top},'slow');
也用于“联系表” ...
但这仅适用于移动设备,不适用于台式机。
如果在印记和隐私对话框中删除,“ More Info”的锚点在手机和台式机上均会令人困惑。
该问题的解决方案是什么?