Несколько лет спустя в настоящее время официально существует лучшее решение. DOM4 Mutation Observers заменяют устаревшие события мутации DOM3. Они , которые в настоящее время реализованы в современных браузерах как MutationObserver
(или как префикс поставщика WebKitMutationObserver
в старых версиях Chrome):
MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
var observer = new MutationObserver(function(mutations, observer) {
// fired when a mutation occurs
console.log(mutations, observer);
// ...
});
// define what element should be observed by the observer
// and what types of mutations trigger the callback
observer.observe(document, {
subtree: true,
attributes: true
//...
});
В этом примере прослушивается DOM изменения на document
и все его поддерево, и оно будет срабатывать при изменении атрибутов элемента, а также структурных изменений. Спецификация проекта имеет полный список действительных свойств для прослушивания мутаций :
childList
- Установите значение
true
, если мутации для целей дети должны быть обнаружены.attributes
- Установите на
true
, если необходимо соблюдать мутации для атрибутов цели.characterData
- Установите на
true
, если необходимо наблюдать мутации данных цели.поддерево
- Установите, чтобы
true
, если мутации не просто нацелены, но также должны наблюдаться потомки цели.attributeOldValue
- Установите значение
true
еслиattributes
установлено значение true и значение атрибута цели до того, как необходимо записать мутацию.characterDataOldValue
- Установите значение
true
, еслиcharacterData
установлено значение true и данные цели до того, как необходимо записать мутацию.attributeFilter
blockquote>
- Установить список локальных имен атрибутов (без пространства имен) если не все атрибутные мутации
(Этот список действует с апреля 2014 года; вы можете проверить спецификацию на любые изменения.)
Фактически каждый проект с открытым исходным кодом имеет систему прикрепления ошибки. Например, вот тот для проектов Apache: http://issues.apache.org/jira/
Однако я думаю, что Вы могли бы спрашивать об универсальной базе данных ошибки причины/эффекта. Я ни о чем не знаю конкретно как этот, но Вы могли бы интересоваться работой над Шаблонами программного обеспечения и особенно Антишаблонами.
Существует BugTraq, однако он фокусируется больше на последствиях безопасности ошибок, основывает.
Смотрите на общие типы компьютерных ошибок на Википедию. Для более определенных ошибок проекты самые с открытым исходным кодом поддерживают общедоступное средство отслеживания ошибки.
Возможно, Вы могли бы хотеть видеть bug.gd. Это помогает Вам искать ошибки и ошибки, которые искали другие люди.
Я думаю, что это не очень известно, ни имеет многих пользователей.