0

我在我的 Web 应用程序中插入了 jQuery (1.8.2) 和 jQuery mobile (1.1.1)。现在,如果我创建这个简单的处理程序:

$('.pulsante-menu').click(function () {
    console.log("ooo");
});

然后单击链接,我看到该控制台消息两次!我该如何解决?

是我的代码!

4

3 回答 3

3

将脚本移动到<head>元素中或单独的 JavaScript 文件中。或尝试使用pageinitjQuery.com 上的这篇文章解释了这样做的原因。

于 2012-12-04T14:00:26.837 回答
0

您在小提琴中定义了两次处理程序,一次在 JS 部分中,一次在 HTML 部分的脚本标记中。删除其中一个,它应该可以工作。

检查我更新的小提琴

HTML:

<head>
  <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.js"></script>
  <script src="http://jquerymobile.com/demos/1.1.1/js/jquery.mobile-1.1.1.js" type="text/javascript"></script>
</head>
<body>
  <a href="#" class="prova">Link</a>
</body>

JavaScript:

$('.prova').click(function () {
    console.log("ooo");
    return false; // stopPropagation and preventDefault
});

​</p>

于 2012-12-04T13:35:43.850 回答
0

你可以试试这样的。

$('.pulsante-menu').click(function (e) {
    e.stopPropagation();
    console.log("ooo");
});
于 2012-12-04T13:39:51.993 回答