平滑滚动javascript禁用超链接
Smooth Scroll javascript disables hyperlinks
我有一个按钮,当点击平滑滚动到同一页面上的锚点。问题是脚本禁用了页面上的所有超链接。我如何解决这个问题,使我的外部超链接再次工作,演示按钮顺利滚动页面?
这是我的按钮所在的代码和相关的javascript:
<body data-spy="scroll" data-offset="80">
<div class="other">
<div class="container">
<div class="col-md-12">
<div class="center-header"><a href="#demo"><button type="submit" class="btn btn-theme-bg btn-lg">Demo</button></a></div>
</div>
</div>
</div>
<div id="demo" div class="center-header"></div>
<script>
$(document).on('click', 'a', function(event){
event.preventDefault();
$('html, body').animate({
scrollTop: $( $.attr(this, 'href') ).offset().top
}, 500);
});
</script>
</body>
HTML:
<a href="#demo" class="someClassName">
JS:
$(document).on('click', '.someClassName', function(event){
观察你的代码后,我看到你正在使用jQuery绑定点击事件锚标记。这将绑定所有锚标记的点击事件。它导致你的锚标签点击。我建议使用下面的代码:
$(document).on('click', 'a', function(event){
if ($.attr(this, 'href').indexOf("#") === 0) {
event.preventDefault();
$('html, body').animate({
scrollTop: $( $.attr(this, 'href') ).offset().top
}, 500);
}
});
相关文章:
- 使用JavaScript从超链接加载时的默认下拉值
- 用Javascript按钮替换Javascript超链接
- 点击超链接即可获得搜索引擎和javascript代码
- 如何在我的javascript生成列表中的
- 部分中放置更多超链接
- 超链接单击以加载新页面并执行JavaScript
- 将 Javascript 数组中的文本转换为超链接
- 在JavaScript / jQuery中用活动超链接替换粘贴的链接
- 正在将javascript值附加到gridview超链接.为什么我的代码没有任何想法'不起作用
- 从javascript onClick超链接获取内容
- VBA IE单击/显示没有id或标记而不是超链接的javascript
- javascript拆分URL超链接
- “data-”属性作为超链接的一部分.HTML 到 JavaScript
- Javascript 在单击超链接时运行操作
- 如何在数组中添加超链接(Javascript)
- 使用 JavaScript 引用按钮的超链接
- 有没有一种简单的方法可以在节点上双击 vis.js 创建超链接/javascript-action
- Javascript 正则表达式替换为超链接
- 将 JavaScript 添加到超链接控件
- 将文本设置为超链接javascript
- 用于更改父窗口 URI 的 PDF 文档超链接 JavaScript