2016-04-09 3 views
-2

поэтому при использовании границы ящика нет фактической ширины собственности, поэтому я не могу получить его через:Получить ширину элемента с JQuery при использовании границы ящика

$("#my_id").width() 

ни

.outerWidth() 

ничто другое Мои догадки в том, что он должен быть рассчитан через пиксели, я не знаю, кажется слишком сложным, должен быть более простой способ.

Спасибо!

P.S. - Использование начальной загрузки . - С помощью JQuery (?, Очевидно, справа)

+0

Любой jsfiddle или работает демо ?? –

+0

Непонятно, что вы спрашиваете; .width() отлично работает для элементов с размером окна: border-box, см. https://jsfiddle.net/72twd1ye/ – CBroe

+0

Понятно, что задает ОП./В любом случае, я тестировал 'outerWidth()', и он работает нормально, [См.] (https://jsfiddle.net/n6rj32ac/) – Pedram

ответ

0

Это демо правило, что Jquery не дает ширину. Это дает.

$(document).ready(function(){ 
 

 
var beforeBorderBox = $('.holly-molly').outerWidth(); 
 
$('.holly-molly').append('<p>beforeBorderBox:'+ beforeBorderBox + '</p>'); 
 
var afterBorderBox = $('.holly-molly').css('box-sizing', 'border-box').outerWidth(); 
 

 
$('.holly-molly').append('<p>afterBorderBox:'+ afterBorderBox + '</p>'); 
 

 
});
.holly-molly { 
 
    background: tomato; 
 
    min-height: 80px; 
 
    text-align: center; 
 
    color: #fff; 
 
    padding: 10px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="holly-molly"> 
 
    <span>Holly Molly</span> 
 
</div>

+0

Использование «внешнего» имущества, казалось, сделало трюк! Благодаря! – Kevin

0

Мы должны получить фактический элемент с помощью $ ("# my_id") ширина(). Если вы хотите включить дополнение (кроме границы), вы можете использовать $ ("# my_id"). InnerWidth(). Если вы хотите включить запас также, то вы можете использовать $ (# my_id '). OuterWidth (правда))

+0

Дело в том, что в css нет ширины, поэтому я не могу использовать это, я сказал что в описании :) – Kevin

Смежные вопросы