Я не очень понимаю, почему люди так любят клонировать ...:)
Я бы сделал что-то вроде
$('#content h4').each(function(index) {
index = index + 1;
$(this)
.attr('id', 'tutorial_' + index)
.before(function() {
return '<div class="how_to">HOW TO<div><span>' + index + '</span></div></div>';
})
.clone()
.html("<li>" + $(this).text() + "</li>")
.wrapInner("<a></a>")
.find('a')
.click(function(){
$("#dialog").dialog("close");
})
.attr({
'title': 'jump to ' + $(this).text(),
'href': '#tutorial_' + index
})
.end()
.appendTo('#dialog ol')
});
Но это только я :) 1006 *
РЕДАКТИРОВАТЬ: После прочтения "много" о replaceWith () - кажется, есть неразрешенная ошибка с IE7 и IE6, поскольку ... навсегда Поэтому я отказался от своей функции, взял вашу и заменил replaceWith
на html
- что в данном случае работает так, как вы хотите, то есть замените html элемента и вернете себя.
Что касается replaceWith, вы, вероятно, столкнулись с одной из ошибок Web и IE7;)