body
在垂直滚动时移动。目前,有一个此模板页面的解决方案,效果很好,我很满意。
问题是: 考虑到外包WordPress的答案,可以调整下面的代码以使其在其他模板页面上更通用,例如这里,就像这里已经运行一样吗?
我认为
.edge-ils-item-link
和.edge-ils-content-table
是变量,但我不知道如何处理和适应它们,我曾尝试替换这些元素,但没有积极的结果,也许这并不简单,更复杂。我还知道edge-wrapper
、edge-wrapper-inner
和wpb_wrapper
在每个页面中都可以找到,这些可能是共同的元素,可以改变解决方案,使其适用于每个页面。另外,根据最新版本,最好准备好jQuery(此时我正在使用jQuery migrate 1.4.1和旧版本的Wordpress,以便至少在设计页面上功能正常)。
.scroll-lock{position:fixed !important;}
$(document).ready(function() {
var windowTop = 0;
var menuOpen = 0;
var offsetContainerList = 0;
$('#responsive-menu-pro-button').click(function() {
var offsetScrollList = $('.edge-ils-item-link:first').offset().top;
if ($('html').hasClass('scroll-lock')) {
$('#responsive-menu-pro-container').one("webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend",
function(event) {
if (menuOpen==0) {
menuOpen = 1;
$('html').removeClass('scroll-lock');
$('.edge-ils-content-table').css('top', eval(offsetContainerList)-40+'px'); //change image container top position
$('html').scrollTop(windowTop); //scroll to original position
}
else {
menuOpen = 0;
}
});
}
else {
windowTop = $(window).scrollTop();
offsetContainerList = $('.edge-ils-content-table').offset().top;
$('html').addClass('scroll-lock');
$('.edge-ils-content-table').css('top', -offsetScrollList + 'px'); //change image container top position
}
});
});
如果有帮助的话,这里是存在问题的视频链接。