Javascript 事件不冒泡

标签 javascript jquery

我有以下标记:enter image description here

我刚刚添加了一些 jQuery 来切换行颜色: enter image description here

单击行中的任意位置可切换 View ,如下所示:

enter image description here

问题是,自从我添加了切换功能后,链接就不起作用了。切换处理程序似乎捕获了该事件。我希望链接首先获取事件,然后获取行,因此链接应该可以正常工作。

有人发现问题了吗?

谢谢

最佳答案

这里的主要问题是,toggle() 不是您使用它的用途。

检查:http://api.jquery.com/toggle/

它使匹配的元素根据其当前状态隐藏和显示。

您可能想要使用的是 toggleClass()根据您的示例。

此外,从您的问题中还不清楚您的 javascript 的目的是什么。您何时(在什么事件中)想要更改项目的颜色?点击它?

您显然滥用了toggle()函数,但我不确定您希望在何时以及发生什么。

编辑:我看到您的目标是 toggle event已弃用。

编辑2:我为你做了一个jsfiddle,我认为它可以满足你的需求。

http://jsfiddle.net/kytJ3/1/

HTML:

<div id="test" class="test-class">DURP<br />HURP<br />
    <a href="http://google.com" target="_blank">A LINK</a>
</div>

js:

$('#test').click(function () {
    $(this).toggleClass('test-class');
});

CSS:

div {
    color: red;
}
.test-class {
    color: blue;
}

这也会产生更干净(无样式)的 JavaScript。并且该链接工作正常。

关于Javascript 事件不冒泡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15522825/

相关文章:

javascript - Jquery检查tr是否没有带类的项目并删除重复项

javascript - jQuery UI 自动完成的问题

javascript - JavaScript 中的 for 循环未运行

javascript - 捕获 beforeunload 确认已取消?

javascript - 有没有一种简单的方法可以将整数转换为其等效文本。即 : 1 becomes One

javascript - 我可以使用什么将 YouTube 视频的链接存储到我的页面中?

javascript - 使用 Javascript 将 lon/lat 坐标分类为 geojson 多边形

javascript - 使用模态窗口实例在 Angular JS 中保存并下一步

javascript - 外部 css、$.ajax、firefox、jquery。

javascript - 类似于页面布局的 Flipboard