我在页面上有几个标题,我需要在每个页面上填充一个链接到相应锚点的导航框。“
但是我的标题都没有锚定。我有太多页面无法手动执行此操作。任何人都可以提出一个干净的jquery解决方案吗?
答案 0 :(得分:13)
function addAnchors(){
//loop through all your headers
$.each($('h1'),function(index,value){
//append the text of your header to a list item in a div, linking to an anchor we will create on the next line
$('#box-anchors').append('<li><a href="#anchor-'+index+'">'+$(this).html()+'</a></li>');
//add an a tag to the header with a sequential name
$(this).html('<a name="anchor-'+index+'">'+$(this).html()+'</a>');
});
}
答案 1 :(得分:1)
实际上,您可以使用ID链接到每个标记。因此,读出h1的id和/或设置它们就可以做到这一点,并且会产生更清晰的html(未来在设计你的a-tag时不会突然出现css-suprises)。