Первоначально я думал, что регулярное выражение для удаления YUI3 classNames (или целых атрибутов класса) и атрибутов id из сериализованной строки DOM было достаточно разумным подходом - но теперь я не уверен, учитывая различные предупреждения об использовании регулярного выражения в HTML.
Я играю над идеей сделать копию рассматриваемой структуры DOM, выполнив:
var nodeStructure = Y.one('#wrap').all('*'); // A YUI3 NodeList
// Remove unwanted classNames.. I'd need to maintain a list of them to remove :/
nodeStructure.removeClass('unwantedClassName');
, а затем:
// I believe this can be done on a NodeList collection...
nodeStructure.removeAttribute('id');
IЯ не совсем уверен в том, что мне нужно сделать, чтобы «скопировать» коллекцию узлов в любом случае, так как я на самом деле не хочу делать вышеизложенное для моей живой разметки, поскольку она только сохраняется - не «закрыта» или«Выход», пользователь может продолжить изменять разметку, а затем снова сохранить.Я знаю, что вышесказанное не делает копию.
Это эффективно?Есть ли лучший способ «санировать» мою живую разметку дополнений фреймворка к DOM (и, возможно, другие вещи позже) перед сохранением в виде строки?Если это хороший подход, как безопасно скопировать мою коллекцию узлов для безопасной очистки?
Спасибо!d
(Это сообщение, связанное с регулярными выражениями, о моей первой идее по очистке всей сериализованной структуры DOM: Безопасные регулярные выражения для очистки сериализованной DOM? , этот вопрос содержит пример HTML, еслиты хочешь)