我的页面中有几个标签。点击每个结果打开弹出对话框,显示有关博客帖子的详细信息(防止标签默认行为,例如:让它访问)。所以我想做的是在显示弹出对话框后手动访问标签的状态。
我的代码看起来像这样:
$("a.news-part").click(function(e){
//do popup
e.preventDefault();
//here i wanna store a tag visited state.
});
非常感谢任何帮助。
答案 0 :(得分:2)
你可以这样做......
$("a.news-part").click(function(e){
//do popup
e.preventDefault();
$(this).addClass('visited')
});
然后,在你的CSS中,你只需要根据你的实际CSS做...... a:visited, a.visited
或其他内容。
答案 1 :(得分:0)
除了其他提议的解决方案之外,您可以在现代浏览器上使用history.pushState
。但是,我还没有测试是否会将链接标记为已访问。
一旦链接在其历史记录中,浏览器就会为:visited
伪类提供帮助。如果您在运行时使用散列历史记录hack 兼容的URL替换了链接,则可以支持旧版浏览器。做一些谷歌搜索,已经有很多StackOverflow问题,如果你不知道我在说什么。