我有一个以youtube结果为div的div
<div id="result" style="display: block;">
<div id="lqT_dPApj9U" class="item view-item">
<div style="float: left;"><img class="thumbnail" alt="" src=
"http://i.ytimg.com/vi/m0SdBmkp9cw/default.jpg" /></div>
<div id="name">
<p class="title">Title goes here</p>
<p class="views">2192501</p>
</div><input id="video_id" type="hidden" />
</div>
<div id="hKoB0MHVBvM" class="item view-item">
<div style="float: left;"><img class="thumbnail" alt="" src=
"http://i.ytimg.com/vi/lqT_dPApj9U/default.jpg" /></div>
<div id="name">
<p class="title">Coca-Cola Happiness Machine</p>
<p class="views">4791156</p>
</div><input id="video_id" type="hidden" />
</div>
</div>
问题
如何从结果div中获取div id =“hKoB0MHVBvM”的值?
我尝试了以下jQuery
$(function(){
$('.item').live('click', function(){
alert($(this).id);
});
});
但它似乎无法正常工作
答案 0 :(得分:5)
$(function(){
$('.item').live('click', function(){
alert(this.id);
});
});
this.id
是'native',比jQuery $(this).attr('id');
更快(慢和冗长)。
P.S:来自jQuery 1.6 .live()
方法已被弃用。如果您有更新版本,请使用.on()
,如:
$('#result').on('click', '.item', function(){
答案 1 :(得分:2)
attr方法就是你所需要的:
$(function(){
$('.item').live('click', function(){
alert($(this).attr('id'));
});
});