我有ul
:
<ul>
<li>1</li>
<li><a href="#">2</a></li>
</ul>
我需要一件我想先制作锚点的东西
<li>1</li>
到
<li><a href="#">1</li></li>`
并从第二个意味着删除锚点
<li><a href="#">2</a></li> to <li>2</li>
我如何在jQuery中执行此操作?
答案 0 :(得分:2)
非常简单的方法,即“切换”链接:
$('ul li').each(function() {
if($(this).find('a').length > 0) {
$(this).text($(this).text());
}
else {
$(this).html($('<a />').attr('href', '#').text($(this).text()));
}
});
<强>更新强>
根据你的评论,我认为你想要这个:
$('ul li').each(function() {
$(this).html($('<a />').attr('href', '#').text($(this).text()));
}).click(function() {
$(this).text($(this).text());
});
但我不是百分百肯定。见这里:http://jsfiddle.net/E2ryt/1/
更新2:
根据David的评论,您可能想要这样:
var lastClicked = null;
$('ul li').click(function() {
if(lastClicked) {
lastClicked.html($('<a />').attr('href', '#').text(lastClicked.text()));
}
lastClicked = $(this).text($(this).text());
});