我遇到了问题,只要点击一个元素,我就会有一个li
切换,但问题是我在“点击”时试图将窗口导航到li
的中心位置元素是点击。它工作但我的问题是,该脚本只适用于第二次点击?
我的理论是,因为li
位于display:none
,所以它不会在第一次点击时读取,而是在第二次点击时读取。无论如何要解决这个问题,它会同时触发切换加窗口导航吗?
还有一种方法可以顺畅地动态(动画)移动它吗?
谢谢你们!
$(document).on('click', "#click", function(){
var viewportHeight = $(window).height(),
foo = $('ul li:nth-child(2)'),
elHeight = foo.height(),
elOffset = foo.offset();
$(window).scrollTop(elOffset.top + (elHeight/2) - (viewportHeight/2));
$(foo).slideToggle();
});
答案 0 :(得分:0)
第一个伙伴尝试设置它的可见性:隐藏;不显示无
如果不能正常工作,当你直接点击时尝试设置定时器工作,这次将再次调用一个计算功能......它将工作..可以更容易测试它..添加到你的下面功能..
$(document).on("mousemove", "#click", function(){
var viewportHeight = $(window).height(),
foo = $("ul li:nth-child(2)"),
elHeight = foo.height(),
elOffset = foo.offset();
$(window).scrollTop(elOffset.top + (elHeight/2) - (viewportHeight/2));
$(foo).slideToggle();
});