我有以下代码,我希望每个H2
id
属性我都会创建一个锚链接。我无法让它正常工作......
<div id="mydiv">
<h2 id="first">first</h2>
<h2>second</h2>
<h2 id="third">third</h2>
</div>
.sls {color: red;font-size: 12px;}
$('#mydiv')
.find('h2[id]')
.append(' <a href="http://www.test.com/page.html#'+ $('h2[id]')
.attr('id') +'" class="sls">Link</a>');
https://jsfiddle.net/ivanionut/1ohh2hws/
感谢您的帮助。
答案 0 :(得分:2)
你想要这样的东西吗?
# telnet 127.0.0.1 9000
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection timed out
$('#mydiv').find('h2[id]').each(function () {
$(this).append(' <a href="http://www.test.com/page.html#'+ $(this).attr('id') +'" class="sls">Link</a>');
});
.sls {
color: red;
font-size: 12px;
}
答案 1 :(得分:2)
在你的追加电话中,你正在使用$(&#39; h2 [id])。attr()这将获得找到的集合中第一个元素的属性,因此它将始终获得第一个h2的id 。使用函数更新代码以在附加中使用 this ,如下所示:
.append(function() {
return '<a href="http://www.test.com/page.html#'+ $(this).attr('id') +'"class="sls">Link</a>'
});