Проверка DOM после большого количества инъекций / манипуляций с JS dom - PullRequest
0 голосов
/ 31 января 2012

Кто-нибудь знает инструмент для проверки DOM страницы после манипуляций и внедрения.

Проблема в том, что у меня очень сложная страница с небольшим количеством HTML, внедренным через js из CMS (что не всегдааккуратно) также много элементов dom, добавляемых и удаляемых через элементы пользовательского интерфейса JS на странице, а также множество других элементов стиля MVC.firebug и т. д. имеет тенденцию закрывать теги самостоятельно.Я полагаю, я мог бы выйти из всего дерева DOM и вставить его в валидатор, но я ищу что-то более элегантное?

РЕДАКТИРОВАТЬ:

для уточненияУ меня есть проект, в котором DOM испорчен, но может быть десятки, возможно, до 200 кусочков HTML, выполненных с использованием JS-шаблонов (усы) в шаблоне MVC (магистраль), а также ввода пользователя и CMS.Я ищу удобный инструмент, который может сделать снимок DOM в любом сценарии и дать мне более четкие указатели, чем встроенный в Dev.Tools/ Firebug

Ответы [ 2 ]

2 голосов
/ 31 января 2012

Кто-то может исправить меня, если я ошибаюсь, но проверка для HTML документа передается в браузер. Все, что вы делаете с DOM после его анализа и загрузки, на самом деле не подлежит проверке. Кроме того, нет никакой гарантии, что дамп DOM в одном W3C-совместимом браузере будет идентичен тому же дампу в другом браузере. Вот почему, если вы проверите innerHTML в более старых версиях IE, вы увидите там неподтвержденные данные, например <TD COLSPAN=3>; этот материал, очевидно, недопустим в стандарте W3C, но по определению он полностью подходит для IE.

И, к сожалению, если вы вставляете целые куски HTML в браузер через JS, этот материал никогда не будет проверен из-за всего, что ему не хватает (например, <head> и <html>).

Одна вещь, которую вы можете сделать (и я смотрел на нашу CMS, в которой есть много сгенерированного пользователем HTML, который часто довольно разбит), - это загрузить текст фрагмента в оболочку XML, например, так: :

<?xml version="1.0"?>
<container>{html_string_to_validate}</container>

И затем загрузить это в анализатор XML (подойдет любой тип). Это не поймает проблемы HTML, но это поймает проблемы вложенности и сущности. Возможно, вам придется потрудиться, чтобы некоторые парсеры могли выводить предупреждения, если они видят пустые теги, такие как <script src="..."></script>.

0 голосов
/ 08 августа 2017

Total Validator позволяет проверять DOM после запуска javascript. Вам необходимо установить бесплатное приложение, а затем их расширение браузера Затем вы просто нажимаете значок на любой странице, которую хотите проверить, и она отправляет DOM в приложение для проверки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...