2017-01-13 10 views
1

HTMLタグの幅を検出するJavascriptがありますが、完全にうまく動作しますが、値を2つ増やしたいと思います。どのように私はこれについて行くだろうかアドバイス?ありがとうございました。Javascript自動幅検出して2ピクセル追加する

$('.navbar-nav li a').each(function(index){ 
 
\t $(this).width(function() { 
 
\t \t return $(this).width(); 
 
\t }); 
 
});
<ul id="main-menu" class="nav navbar-nav"> 
 
    <li><a href="/" class="nav-link">Home</a></li> 
 
    <li><a href="/" class="nav-link">About</a></li> 
 
    <li><a href="/" class="nav-link">Contact</a></li> 
 
</ul>

の作業jsfiddle:https://jsfiddle.net/L6g90mLn/7/

+1

'幅()'ゲッター/セッターメソッドです。だから '$(this)width($(this).width()+ 2)'は仕事をするべきです。 [docs](http://api.jquery.com/width/) – giorgio

+0

@giorgio '.width'はセッターではありません。 '.css( 'width'、)'はこのトリックを行うべきです。 –

+0

@KeesvanLieropそれは....これをチェックしてください。 http://api.jquery.com/width/#width2 – giorgio

答えて

0

あなたがセッターとゲッターとしてwidthを使用することができます。 jQueryのAPIを参照してください:http://api.jquery.com/width/

$('.navbar-nav li a').each(function(index){ 
 
\t $(this).width($(this).width() + 2); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<ul id="main-menu" class="nav navbar-nav"> 
 
    <li><a href="/" class="nav-link">Home</a></li> 
 
    <li><a href="/" class="nav-link">About</a></li> 
 
    <li><a href="/" class="nav-link">Contact</a></li> 
 
</ul>

+0

これは完全に動作します、あなたの助けをありがとう。同様に前のコメントと同様に素晴らしいです。 – Bradley

1

あなたはほとんどあります

$('.navbar-nav li a').each(function(index){ 
    var newWidth = $(this).width() + 2; 
    $(this).css('width', newWidth); 
}); 
関連する問題