В jQuery метод remove() не удаляет элемент
У меня есть "переключатель языка" на сайте Drupal 7.
<ul class="language-switcher-locale-url">
<li class="en first">
<a class="language-link" xml:lang="en" href="someURL">
<img class="language-icon" width="26" height="19" title="English" alt="English" src="someURL">
</a>
</li>
<li class="fr active">
<a class="language-link active" xml:lang="fr" href="someURL">
<img class="language-icon" width="26" height="19" title="Français" alt="Français" src="someURL">
</a>
</li>
<li class="ru last">
<a href="someURL" class="language-link" xml:lang="ru">
<img class="language-icon" src="someURL" width="26" height="19" alt="Русский" title="Русский" />
</a>
</li>
</ul>
Когда некоторые особые условия выполняются, я хочу убрать российский флаг.
<script>
jQuery(document).ready(function() {
var ce;
ce = jQuery("ul.language-switcher-locale-url > li.ru");
ce.remove();
ce = undefined;
});
</script>
Кажется, это работает, потому что флаг снят, Firebug не показывает ошибок в консоли, и с / Inspect Element я считаю, что <li>
был удален. Однако, если я перейду к Page Source, он все еще там.
Означает ли это, что jQuery не удаляет элемент из DOM? Почему это все еще в Источнике Страницы? Как я могу быть уверен, что он полностью удален?
1 ответ
Решение
Источник страницы показывает вам HTML, который был первоначально загружен с сервера, однако вы удалили его из DOM, который вы подтвердили с помощью элемента inspect.