首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当与css :active结合使用时,click事件不会触发

当与css :active结合使用时,click事件不会触发
EN

Stack Overflow用户
提问于 2010-06-24 00:15:44
回答 2查看 292关注 0票数 1

我已经创建了一个导航菜单,当单击链接时,会打开一个jquery对话框。

在我的css中的这些链接上,我有:

.navigationLinkButton:active { background:rgb(200,200,200); }

该对话框仅附加了以下内容:

$("#link").click(function() {$(this).dialog("open")});

偶尔(大约每4-5次点击一次),当用户单击链接时,对话框不会打开,只有链接的背景色改变。再次单击该链接将打开对话框。你知道为什么会发生这种情况吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-24 00:22:01

确保您在页面上使用#link ID的次数不超过一次。

如果您的链接是<a>元素(我假设它们必须是活动元素,因为您使用的是:active),请在click()处理程序的末尾尝试return false;

这将禁用可能刷新页面的链接的默认行为。

代码语言:javascript
运行
复制
$("#link").click( function() {
    $(this).dialog("open");
    return false;
});
票数 0
EN

Stack Overflow用户

发布于 2010-06-24 00:22:37

代码语言:javascript
运行
复制
$("#link").click(function() {$(this).dialog("open")}

应该是

代码语言:javascript
运行
复制
$("#link").click(function(){$(this).dialog("open")});

还要确保页面上只有一个#链接。如果没有,请尝试使用类(".link")

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3103454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档