当用户单击“联系我”按钮时,我希望屏幕滑动到#contact 元素,但不知道该怎么做。我尝试了各种不同的代码片段并尝试根据我的需要对其进行调整,但似乎没有任何效果。
网站在这里;http://dombracher.com/
只是希望屏幕滑动到上面提到的 div,而不是快速捕捉到它。
提前致谢。
当用户单击“联系我”按钮时,我希望屏幕滑动到#contact 元素,但不知道该怎么做。我尝试了各种不同的代码片段并尝试根据我的需要对其进行调整,但似乎没有任何效果。
网站在这里;http://dombracher.com/
只是希望屏幕滑动到上面提到的 div,而不是快速捕捉到它。
提前致谢。
$(document).ready(function() {
$("a[href^='#']").anchorAnimate()
});
jQuery.fn.anchorAnimate = function(settings) {
settings = jQuery.extend({
speed : 1100
}, settings);
return this.each(function(){
var caller = this
$(caller).click(function (event) {
event.preventDefault()
var locationHref = window.location.href
var elementClick = $(caller).attr("href")
var destination = $(elementClick).offset().top;
$("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, settings.speed, function() {
window.location.hash = elementClick
});
return false;
})
})
}
您可以自己动画窗口滚动
$(".menu2").click(function(){
$(document.body).animate({
"scrollTop": $("#contact").offset().top
}, 2000, "swing"); // animation time and easing
return false; // preventing default jump
});
小提琴:http: //jsfiddle.net/M8JE2/
或者使用http://flesler.blogspot.com/2007/10/jquerylocalscroll-10.html之类的 jquery 插件来使任何/所有本地链接与动画一起使用。
在这里,滚动到页面底部,因为您的联系表格在那里:
jQuery(function () {
jQuery('#nav1 li.menu2').click(function (e) {
jQuery("html, body").stop().animate({
scrollTop: jQuery(document).height()
}, 1000);
e.preventDefault();
return false;
});
});