Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Принудительно вызвать <noscript> или удалить тег,не удаляя контент тега (https://javascript.ru/forum/misc/61629-prinuditelno-vyzvat-noscript-ili-udalit-teg-ne-udalyaya-kontent-tega.html)

Madzal 26.02.2016 23:01

Принудительно вызвать <noscript> или удалить тег,не удаляя контент тега
 
В общем к примеру есть у нас сайт : http://www.enable-javascript.com/ru/
На сайте есть такая часть кода :
<noscript>
                    <div class="disabled">
                        JavaScript отключен в вашем веб-браузере. Если Вы включите JavaScript, этот текст изменится.
                    </div>
                </noscript>

Нужно принудительно отобразить то что между noscript,т.е получить :
<div class="disabled">
                        JavaScript отключен в вашем веб-браузере. Если Вы включите JavaScript, этот текст изменится.
                    </div>

Пробовал так :
document.body.innerHTML = document.body.innerHTML.replace(/<noscript>/g,'');
    document.body.innerHTML = document.body.innerHTML.replace(/<\/noscript>/g,'');

Пробовал так :
var h = document.getElementsByTagName('noscript');
for (var i = h.length - 1; i >= 0; i--) {
var elem = h[i];
elem.parentNode.insertBefore(elem.firstChild, elem);
elem.removeChild(elem);
}

Но в обоих случаях добавляются лишние ковычки,как быть ?

рони 26.02.2016 23:31

Madzal,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
 </head>

<body>
<noscript>
                    <div class="disabled">
                        JavaScript отключен в вашем веб-браузере. Если Вы включите JavaScript, этот текст изменится.
                    </div>
                </noscript>
<script>
window.addEventListener('DOMContentLoaded', function() {
var parent = document.querySelector('noscript'), dis = parent.textContent;
parent.insertAdjacentHTML("beforeBegin", dis);
    });

</script>
</body>

</html>

Madzal 26.02.2016 23:51

thx :victory:


Часовой пояс GMT +3, время: 10:53.