2013-02-01 43 views
2

我想使用prepend动态地附加一个div,它也附着了容器的ID。我似乎无法使它适用于每个元素,目前它只使用相同的ID。JQuery使用Prepend动态设置ID

HTML

<div class="advanced-slider" id="About" > 
     <p> Content </p> 
</div> 
<div class="advanced-slider" id="Main" > 
     <p> Content </p> 
</div> 

JS

$('.advanced-slider').wrap('<div class="slider-container"><div class="slider-wrapper"></div></div>'); 

$('.slider-container').prepend('<div class="slider-title" id="' + $(this).find('.advanced-slider').attr('id') + '-title"></div>'); 

回答

1

this在你的代码是指window对象,请尝试以下。

$('.slider-container').prepend(function(){ 
    return '<div class="slider-title" id="' + $(this).find('.advanced-slider').prop('id') + '-title"></div>'; 
}); 

http://jsfiddle.net/aPJs5/

+0

完美。感谢您的快速回复;)|一个简单的问题是,使用prop属性更好吗? – Labithiotis

+0

@ user1872133不客气,是的,建议使用'prop'方法。 – undefined

1
$(".slider-container").prepend(function(){ 
    return "<div class=\"slider-title\" id=\"" 
       + $(".advanced-slider", this).attr("id") 
       + "-title\"></div>"; 
});