点击链接查看图标(例如眼睛图标)

时间:2016-07-28 09:47:32

标签: javascript jquery html css

点击链接后我想显示一个眼睛图标。例如。我有一个工作列表,我看到一个帖子,然后点击查看详细信息,之后它应该显示一个图标,告诉我我已经访问过帖子,我必须将查看的帖子存储在一个集合中并检索。我试图在点击时显示一个眼睛图标但是当我刷新页面时它没有显示。怎么解决?任何人都可以帮助我。提前致谢。

以下是我正在尝试的示例HTML

@SuppressWarnings("WeakerAccess")

和JS

<div id="search"><h2><a href="#">Clinical Psychologist </a><span class="job-type part-time">Part Time</span></h2></div>

   <div id="eyeIcon">
    <span class="glyphicon glyphicon-eye-open"></span>
     </div>

3 个答案:

答案 0 :(得分:3)

你的问题不是一个简单的jquery答案。不会存储您的DOM(html)中的javascript变量或javascript更改。 您需要一种方法来存储这些项目,这可以通过多种方式完成

  1. 在Cookie中
  2. 在localstorage中
  3. 在服务器上的数据库中(我更喜欢这个),在这种情况下你需要ajax
  4. 您需要在网站的负载上接收这些值,然后在cookie / localstorage / database(您选择)中存储的每个项目上显示图标

    我希望这会对你有所帮助:)。

答案 1 :(得分:0)

我没有尝试:visited CSS选择器,但你可以从那里开始。看起来有特定的安全问题将其限制为一组有限的属性,但您可能能够使用颜色“破解”解决方案来显示图标。

https://developer.mozilla.org/en/docs/Web/CSS/:visited

这个JSFiddle说明了这个想法:https://jsfiddle.net/0ryo6sod/

答案 2 :(得分:0)

我认为你需要像“a:visited”这样的东西,然后根据结果设置图标。这是一个CSS伪检查,但对于大多数浏览器来说这是一个安全风险,请参阅Google chrome a:visited background image not working。你可以这样:

<强> JAVASCRIPT

 $("#search").click(function(){
    if ($("a:visited")) {
        //hide link
        $("#eyeIcon").show();
    } else {
        //show link 
        $("#eyeIcon").hide();
    }
});

未经过测试