0

一如既往,非常重视您的帮助<3

我的网站上有描述中包含元数据关键字的列表。我想让这些看起来像标签(我们的 cms 不支持标签,因此这个 hack)。它只打印用逗号分隔的单词,如下所示:

<div class="tags">abp, accredited building practitioners, calendar of events, upcoming events</div>

javascript 是否能够在这些 div 中找到任何单词并用链接到 oursite.com/search?query=THEWORD 的 href 替换它们?如果是这样,是否有人可以共享脚本?

4

2 回答 2

0

**看一下这个。如果您看到的警报消息是您要查找的内容,则只需将其附加到 div 中。 http://jsfiddle.net/UH5U9/3/

编辑

$('.tags').each(function(){
var s = $(this).html()

a = s.split(',');      
var temp='';      
for (var i = 0; i < a.length; i++)
{
    temp =temp + '<a href="oursite.com/search?query='+a[i]+'">'+a[i]+'</a>';

 }
$(this).html('');
$(this).html(temp);
});
于 2012-04-05T04:50:56.423 回答
0

这是一个用一点 jQuery 构建的工作函数,虽然可以很容易地转换为基本的 JavaScript:

jQuery:

<script>
    $(function(){
        $('.tags').each(function(){
            var obj=$(this),tags=obj.text().split(','),i=0,len=tags.length;
            if(obj.text()) {
                for(i;i<len;i++) {
                    var tag=tags[i].replace(/(^\s*)|(\s*$)/g,'');
                    tags[i]='<a href="http://oursite.com/search?query='+encodeURIComponent(tag)+'">'+tag+'</a>';
                }
                obj.html(tags.join(', '));
            }
        });
    });
</script>

HTML:

<div class="tags">abp, accredited building practitioners, calendar of events, upcoming events</div>
<div class="tags">test, another test, some more testing, etc</div>
<div class="tags">the, code, needed, to, be , in, an, each(), loop</div>
<div class="tags"></div>
<div class="tags">random, words, that, show, work, hopefully</div>
<div class="tags">the, return, false, was, causing, problems</div>
<div class="tags"></div>
于 2012-04-05T05:05:18.140 回答