javascript - 左键单击链接不起作用,但 'Open in New Tab' 可以

标签 javascript jquery html twitter-bootstrap href

我正在处理我的个人网站(从模板构建),就在我完成时,我的链接停止响应左键单击。如果您右键单击并选择“在新选项卡中打开”,它们就可以正常工作。当您将鼠标悬停在它们上方时,您可以在浏览器底部的状态栏中看到该 URL。

我已经对此进行了大量搜索,似乎有一些 JavaScript 覆盖了标签的默认行为。我尝试查看 Chrome 和 Firefox DevTools 的 Network 和 EventListener 部分,但我不完全确定我在寻找什么。

我不想在这里粘贴整个网站的代码(太长),但你可以 download it from my Github page亲自尝试一下。

因为我认为问题与 JavaScript 有关,所以这里是我网站的页眉和页 footer 分,因此您可以看到我所附的内容:

<head lang="en">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

<title>Mike Lipson | Instructional Technology Specialist</title> 

<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" href="fancybox/jquery.fancybox-v=2.1.5.css" type="text/css" media="screen">
<link rel="stylesheet" href="css/font-awesome.min.css" rel="stylesheet">

<link rel="stylesheet" type="text/css" href="css/style.css">    

<link href='http://fonts.googleapis.com/css?family=Titillium+Web:400,600,300,200&subset=latin,latin-ext' rel='stylesheet' type='text/css'>


<link rel="prefetch" href="images/zoom.png">

<style type="text/css" media="screen">
    a.heading_link {
        color: white;
    }
</style>

    <!-- SCRIPTS -->
<script src="js/html5shiv.js"></script>
<script src="js/jquery-1.10.2.min.js"></script>
<script src="js/jquery-migrate-1.2.1.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.easing.1.3.js"></script> <!-- Potential link-breaker -->
<script type="text/javascript" src="fancybox/jquery.fancybox.pack-v=2.1.5.js"></script>
<script src="js/script.js"></script>

<!-- fancybox init -->
<script>
$(document).ready(function(e) {
    var lis = $('.nav > li');
    menu_focus( lis[0], 1 );

    $(".fancybox").fancybox({
        padding: 10,
        helpers: {
            overlay: {
                locked: false
            }
        }
    });

});
</script>

最佳答案

轮播 API 会自动捕获对 [data-slide] 的任何点击或 [data-slide-to]元素(具有 data-slidedata-slide-to 参数的标签)。

然后您在其中一个主容器上设置了 <div data-slide="1">属性(参见 index.html#L68 ),因此任何点击都将被捕获并阻止( e.preventDefault() )。

你可以在轮播插件定义中看到 js/carousel.js#L187 .

因此,您应该删除此属性并使用另一个属性名称,或者停用轮播 API。

关于javascript - 左键单击链接不起作用,但 'Open in New Tab' 可以,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23808419/

相关文章:

html - JQM 和 CSS 覆盖

javascript - 基于cookie多次渲染React组件

javascript - 打印 HTML 表格中选定的行

javascript - 设置隐藏字段的值不适用于 jQuery

jquery - css让div停留在div的底部

html - 对齐两个不同列中的复选框和文本

javascript - replaceWith() 在 .hover() 中不起作用

javascript - 向 verold 模型对象添加动画

php - 如何修复使用 PHP 计算纯文本字数的错误?

javascript - 如何创建具有固定标题和可滚动正文的 html 表格?