【发布时间】:2015-10-27 21:22:15
【问题描述】:
我想在用户访问我网站的每个链接后添加一个简单的 check 图标。
到目前为止,这是我尝试过的:
CSS
.accomm-panel:visited h5:after {
content: "\f00c";
color: #80b54d;
}
注意:“.accomm-panel”类是锚链接。我只想定位访问过的链接并查找 h5 元素并附加图标。
JS
$('.accomm-panel:visited h5').after('<i class="fa fa-check fa-1"></i>');
HTML
<a href="http://localhost/gbtc/accommodation/029gb-step-back-in-time/?_sfm_low_season_fee=0+10000" class="accomm-panel">
<div class="img-container" style="background-image: url('http://localhost/gbtc/wp-content/uploads/2015/05/gordons-bay-harbour-wall-sunset.jpg');">
<div class="price">
<p>From</p>
<p class="amount">R</p>
</div>
</div>
<div class="panel-content">
<h5>Step Back in Time</h5>
<p class="description">1 Guest • 12 Bedrooms • 12 Bathrooms • 029GB</p>
</div>
</a>
这些方法都不起作用。 This article 概述由于用户隐私问题,文章中的建议不太可能奏效。
我想知道这些问题是否有解决方法。
【问题讨论】:
-
:visited无论如何都不是有效的 jQuery 选择器 -
@haim770:它是一个有效的 CSS 选择器,所以它在 jQuery 下当然应该是有效的。浏览器是否返回访问过的锚元素列表尚不确定(我目前正在使用移动设备),但这是浏览器和 JavaScript 的安全问题,而不是因为选择器无效。
-
@DavidThomas,不,不是。见api.jquery.com/category/selectors。在我看来,原生
document.querySelectorAll也无法使用它(出于明显的隐私原因)。 -
@MarcosPérezGude 我已经添加了 HTML
-
@haim770, David Thomas:jQuery 在后台使用 qSA,因此任何“有效”的 CSS 选择器(命名空间的选择器除外)都可以在 qSA 中正常工作而不会引发错误。 “有效”和“支持”之间存在巨大差异,但是......
标签: jquery css css-selectors