设置它的孩子的li宽度a

时间:2013-02-16 21:10:27

标签: jquery

我想设置它自己li的每个a宽度。这是the code我正在尝试:

if($('ul').length()) { 
    $('ul li').each(function() {
        $(this).children('a').each(function() {
            var width2 = $(this).style.width();
            $('ul li').style.width = width2;
            $(this).text(width2);
        });
    });
}

HTML:

<ul>
    <li class="home"><a href="#">Home</a></li>
    <li class="about-me"><a href="#">About</a></li>
    <li class="portfolio"><a href="#">Realizations</a></li>
    <li class="contact"><a href="#">Contact</a></li>
</ul>

我做错了什么?

2 个答案:

答案 0 :(得分:0)

这是updated jsBin

在jQuery中,您可以使用.css("attribute")访问样式属性,并使用.css("attribute","value")进行更新。另外,您可以说$("ul").length,不需要()

最终结果:

if($('ul').length) { 
   $('ul li').each(function() {
      $(this).children('a').each(function() {
         var width2 = $(this).css("width");
         $('ul li').css("width",width2);

      });
   });
 }

答案 1 :(得分:0)

var width;
$('ul li a').each(function() {
  width = $(this).css('width');
  $(this).parent('li').css('width', width);
});

它选择所有a元素,获取宽度并设置为父li元素