使用Javascript删除主题标签

时间:2013-07-02 12:28:47

标签: javascript css

有没有办法用javascript隐藏页面上的所有主题标签?

例如,我在我正在制作的网站上的每个帖子下面都有一个标签云。每个标记看起来都像:#myhashtag

我想要javascript(可能是css?)来浏览文档并隐藏“#”,以便标记最终看起来像:myhashtag

这可能吗?

3 个答案:

答案 0 :(得分:3)

让哈希标签成为具有特定类的元素。 (如果你有其他识别标记,只需相应地编辑CSS选择器。)比8行jQuery应该可以做到这一点:

  $('.my-hash-tag').each(function(i, elem) {
      var $elem = $(elem), text = $elem.text();

      if(text.length > 0 && text.charAt(0) == '#') {
         $elem.text(text.substring(1));
      }
  });

答案 1 :(得分:1)

var doc = document.body;
doc.innerHTML = doc.innerHTML.replace(/(\B)#(\w+)\b/g, '$2');

答案 2 :(得分:1)

这将完成工作,评论解释它是如何工作的。目前,它假设标签位于锚点内,并且在id为#cloud的div内,但是这很容易编辑,只需使用不同的元素选择器,概念保持不变。

var tagCloud = document.getElementById("cloud"); // Get tag cloud element
var tags = tagCloud.getElementsByTagName('a'); // Find all anchors within cloud (If they aren't anchors change this to containing elements or replace with a class search .etc
for (var i=0, max=tags.length; i < max; i++) { // Loop through tags
     tags[i].innerHTML = tags[i].innerHTML.replace("#", ""); // Remove #'s
}

工作小提琴:http://jsfiddle.net/3ayhA/1/