以下代码有效,但我确信有更简洁的方法可以实现相同的结果,尤其是字符串替换:
$('#nav-main .nav-sub').each(function() {
var name = $(this).attr('id');
$(this).children('li').children('a').each(function() {
var text = $(this).text().toLowerCase();
var spaces = / /g;
var sub = /sub-/;
var id = name + '-' + text.replace(spaces, '-');
var id = id.replace(sub, '');
$(this).attr('id', id);
});
});
答案 0 :(得分:1)
$('#nav-main .nav-sub').each(function() {
var name = $(this).attr('id');
$('li a', this).each(function() {
this.id = (name + '-' + $(this).text().toLowerCase().replace(/\s/g, '-')).replace(/sub-/, '');
});
});