Как узнать есть ли элемент в dom?
мне нужно узнать присутствует ли элемент с id redakt_form на странице и в зависимости от этого выполнить действие
напишите строчку плиз, я гуглил и не нагуглил, забыл как делать ( я сделал вот так if($("#redakt_form")=false){} но чето не работает |
Как вариант
<p id='redakt_form'></p>
<script>
if (document.getElementById('redakt_form')) alert('Элемент существует')
</script>
|
Цитата:
Я не знаток jQuery, так что предложу:
if( $("#redakt_form").length === 0 ){}
|
Спасибо парни! тупикую просто
|
Немного усложню задачу, т. к. сам недавно столкнулся: нужно узнать есть ли элемент в document, при этом у элемента может и не быть id (устанавливать самому нельзя), но ссылка на него уже есть в переменной. Ищется максимально быстрый способ. Я пока пришел к такому:
if (elem.offsetParent || elem == document.documentElement || elem == document.body) {
}
, но кажется мне, что можно еще проще. |
Может:
if(element.parentNode === null) alert("Элемент не в ДОМе");
??? |
Самое интересное, что это не проходит)
Пример я удалил кусок dom дерева и если там есть элемент, который я проверяют на "в dom'e" то он вернет родителя не смотря ни на что. Про id, почему нельзя добавлять? Пишите функцию, которая генерирует уникальные id и вставляете их, также для защиты от css можно добавлять впереди ":".
function elementInDOM( elem ) {
var elInDOM;
if ( elem.id ) {
elInDOM = document.getElementById( elem.id );
} else {
elem.id = ":" + uniqId();
elInDOM = document.getElementById( elem.id );
elem.removeAttribute("id");
}
return !!elInDOM;
}
|
Цитата:
Цитата:
2. легко обмануть, можно просто создать элемент с id который уже существует в dom (не тот случай когда uniqId() работает, а когда вручную существующий id создается). 3. в десятки раз медленней. |
Цитата:
elem.ownerDocument == document; |
Цитата:
|
| Часовой пояс GMT +3, время: 19:38. |