2011-04-13 65 views
0

我有这样的事情:使用JavaScript两个<a>标签组合成一个

<a href="#"> &plusmn;</a> 
<a href="#"> Link Here</a> 

我希望它看起来像:

<a href="#"> &plusmn; Link Here</a> 

然而,由于在WordPress限制我是很少有人不确定如何将它们合并为JavaScript。

+1

需要澄清,除非这是字面上所有你想要做的这个确切的标记。 – 2011-04-13 17:16:08

+0

“wordpress”的局限性?这两个锚点是如何创建的? – Khez 2011-04-13 17:16:09

+2

如果你解释你是如何得到不同的链接而不是一个可能会得到更好的答案,而不是将它们合并后 – 2011-04-13 17:16:27

回答

4

这里:

a1.textContent += a2.textContent; 
a2.parentNode.removeChild(a2); 

其中a1a2是这两个锚元素的引用。 (一旦你获得了参照第一锚,你可以得到参考第二个像这样:a1.nextElementSibling

现场演示:http://jsfiddle.net/simevidas/QWQy8/

1

更新:见@ SIME维达斯评论为一个更苗条的方法。


Live Demo

的jQuery:

$('a + a').prev().html(function() { 
    $(this).html($(this).html() + $(this).next().html()); 
    $(this).next().remove(); 
}); 

HTML:

<a href="#"> &plusmn;</a> 
<a href="#"> Link Here</a> 

<a href="#"> &plusmn;</a> 
<a href="#"> Another Link Here</a> 

输出:

<a href="#"> ± Link Here</a> 

<a href="#"> ± Another Link Here</a> 
+0

你可以将这两行缩小到这个:$(this).append($(this).next( ).remove()。html());' - [Live demo](http://jsfiddle.net/simevidas/CASff/1/) – 2011-04-13 18:53:56

+0

@Šime:谢谢。我对jQuery相当陌生,所以我还不知道所有的快捷方式。 :) – drudge 2011-04-13 18:56:24

相关问题