使用div的onclick =函数。 然后执行一个确认框。 如果用户按下确定。它使用以下命令重定向:window.location.hash并自动滚动到div ID。 自动滚动工作正常。但是动画滚动在此处中断。不使用标准时动画滚动<a href>链接
使用传统的href的工作正常与动画滚动。
我是一个业余爱好者,拼凑了以下来自不同来源的代码。我会发布代码,希望有人有答案。
代码:
function FrontAsNew() {
if (confirm("No damage allowed") == true) { window.location.hash = "#side"; }
else { window.location.hash = "#front"; }
}
<div id="cosmetics_box" style="cursor:hand; cursor:pointer;" onclick="FrontAsNew()">As new</div>
Animated scroll script:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" ></script>
<script>
$('div').click(function(){
$('html, body').animate({
scrollTop: $($(this).attr('href')).offset().top
}, 2000);
return false;
});
因此,在短期:动画滚动正常工作与传统的A HREF链接。但是,当使用div作为执行使用location.hash的函数的链接时,动画滚动会中断。
感谢您提前提供任何帮助!
你点击功能所指向的“一”的标签。如果您希望能够点击div,请更改$('a')。click(function(){});到$('div')。click(function(){});虽然,你应该缩小你点击的div的类名或ID,否则当点击任何一个点击时你的事件都会触发。 – 2014-10-06 20:59:24
谢谢。我将点击功能改为div。但它还没有工作。 – user3077601 2014-10-06 21:04:24