Похоже, что в jQuery, когда элемент не виден, width () возвращает 0. Имеет смысл, но мне нужно получить ширину таблицы, чтобы установить ширину родительского элемента, прежде чем я покажу его.
Как указано ниже, в родительском элементе есть текст, из-за которого он искажается и выглядит неприятно. Я хочу, чтобы родительский элемент был такой же ширины, как таблица, и имел текстовый перенос.
<div id="parent">
Text here ... Can get very long and skew the parent
<table> ... </table>
Text here too ... which is why I want to shrink the parent based on the table
</div>
CSS:
#parent
{
display: none;
}
Javascript:
var tableWidth = $('#parent').children('table').outerWidth();
if (tableWidth > $('#parent').width())
{
$('#parent').width(tableWidth);
}
tableWidth всегда возвращает 0, поскольку он не виден (я предполагаю, поскольку он дает мне номер, когда он виден). Есть ли способ получить ширину таблицы, не делая видимого родителя?