jQuery最后一个子选择器

时间:2015-01-28 03:16:36

标签: javascript jquery

这不起作用,我不知道为什么。我已经在控制台中尝试了它,但是当我更改我的js代码时它不起作用。

$('#recipe-table td:last-child').width();

我怎样才能以正确的方式获得它?

这是html

           <div id="div-lists">  
                    <div id="div-recipe-table">
                    <table class="" id="recipe-table" cellspacing="0" cellpadding="0">
                        <tbody>                                
                                    <tr class="recipe-list" data-ng-repeat="recipe in recipe_data" ng-click="recipe_click(recipe.CodeListe,recipe.Name)">
                                        <td id="td-img{{recipe.CodeListe}}">
                                            <center>
                                                <span id="img{{recipe.ID}}X">
                                                    <a id="{{recipe.ID}}" href="javascript:void(0);">
                                                        <img  ng-if="recipe.Pictures !==''" fallback-src="images/default.png" ng-src="{{recipe.Pictures}}" class="images" id="img{{recipe.ID}}"/><img  ng-if="recipe.Pictures===''" class="images" src="images/default.png" id="img1"/>
                                                    </a>
                                                </span>
                                            </center>
                                        </td>
                                 <!-- I want to get The width of this <td> -->
                                        <td class="recipes"> 
                                            <div id="div-recipe-name">
                                                <strong>{{recipe.Name}}</strong></div>
                                        </td>
                                 <!-- Until here
                                    I already tried using $('.recipes').width(); but it returns 0 -->
                                    </tr>
                        </tbody>
                    </table>
                    </div>
                    <div id="div-list-loading"></div>
                    <div id="div-list-noresults">{{ui_translation.UIT[171610]}}</div>
                </div>
            </div>

2 个答案:

答案 0 :(得分:0)

尝试下面的jQuery

您可以使用.last()方法从该集合的最后一个元素构造一个新的jQuery对象。

$('#recipe-table td').last().width();

<强> JSFIDDLE DEMO

答案 1 :(得分:0)

尝试以下方法:

$('#recipe-table td:last').width();

来自jQuery Docs

  

while:last只匹配一个元素:last-child可以匹配更多   不止一个:每个父母一个。

由于您已尝试过$('.recipes').width();,因此以下内容可为您提供任何结果:

$('.recipes').each(function (index, elem) {
    alert($(this).width());
});