Ваша проблема может быть сложной, потому что если есть div
, который содержит 2 слова, плюс еще <p>
внутри div
с 200 словами, то вы считаете div
, имеющий 202 слова, или Вы считаете, что p
имеет 200 слов и, следовательно, является самым большим?
Если для p
есть 4 границы, то имеет смысл сказать, что это p
с 200 словами. Если границы отсутствуют, то имеет смысл сказать, что это div
с 202 словами.
Вы можете попробовать написать функцию для обхода узла, и если есть какой-либо элемент block
с 4 границами, тогда не включайте количество слов.
Вещи могут быть более сложными, если есть плавающие div
с, которые установлены на display:inline
, чтобы обойти ошибку IE 6. Или, если есть границы, но цвет совпадает с цветом фона содержащего div
.
Если вас не волнуют внутренние элементы, имеющие границы, то одной попыткой может быть просто посмотреть на непосредственных потомков тела и выяснить, сколько символов внутри него (сумма текста по всем потомкам, возможно, используя innerText или innerHTML и удалите все теги).
Вы также можете найти самый большой элемент с самой большой площадью (ширина х высота), если вы ищете раздел контента, если только нет левой или правой длинной и узкой боковой панели или рекламного раздела с область контента широкая, но очень короткая.