如何将<span>标记插入从XML Feed生成的文本字符串中间?</span>

时间:2010-03-01 22:33:15

标签: javascript xml

我正在为想要将他们喜爱的歌曲从Hype Machine中拉入网站的客户构建一个wordpress主题。我正在抓住XML提要。

在结果样式方面,我希望能够以不同于歌曲标题的方式设置艺术家名称的样式。不幸的是,Feed包括艺术家姓名和歌曲标题在相同的锚元素中:

<li>
    <a href="link">Artist Name - Song Title</a>
</li>

<li>
    <a href="link">Artist Name - Song Title</a>
</li>

我想知道是否有一种方法可以将span标记(可能使用javascript或Jquery)插入到生成的html中,以便结果如下:

<li>
    <a href="link"><span class="artist">Artist Name - </span>Song Title</a>
</li>

<li>
    <a href="link"><span class="artist">Artist Name - </span>Song Title</a>
</li>

我的想法是我可以使用javascript在字符串前面插入open标签,然后当它找到“ - ”时插入结束标记。我只是不清楚JS知道如何做到这一点,谷歌也没能提供太多帮助。

思想?

谢谢!

3 个答案:

答案 0 :(得分:2)

如果你想以最简单的方式做到这一点 -

var artistAndTitle = // wherever you get your info from, xml node or whatever
var infoArray = artistAndTitle.split(' - ');
var artistName = infoArray[0];
var trackTitle = infoArray[1];
var html = '<span>' + artistName + '</span> - <span>' + trackTitle + '</span>';

答案 1 :(得分:1)

artistAndTitle =“&lt; span&gt;” + artistAndTitle;

artistAndTitle = artistAndTitle.replace(“ - ”,“ - &lt; / span&gt;”);

答案 2 :(得分:0)

我一直发布此链接:http://johannburkard.de/blog/programming/javascript/highlight-javascript-text-higlighting-jquery-plugin.html

如果源代码没有完全符合您的要求,请查看他的代码所做的事情,也许您可​​以对其进行调整。根据我的经验,即使将更改应用于相当大量的HTML文本,它也非常快。