Теги скриптів за замовчуванням приховані за допомогою display:none;
. Unor 1 пояснює основну специфікацію мови. Однак вони все ще є частиною DOM і можуть бути відповідно стилізовані.
Однак, важливо пам’ятати, що саме робить тег сценарію. Хоча це раніше супроводжувалося типами та мовами, це більше не потрібно. Тепер передбачається, що JavaScript є там, і в результаті браузери будуть інтерпретувати та виконувати сценарій у міру зустрічі (або завантаження) з цих тегів.
Після виконання сценарію вміст тегу - це лише текст (часто прихований) на сторінці. Цей текст можна розкрити, але його також можна видалити оскільки це просто текст.
Внизу сторінки, безпосередньо перед закриваючим </html>
тегом, ви можете дуже легко видалити ці теги разом з їх текстом, і жодних змін на сторінці не буде.
Наприклад:
(function(){
var scripts = document.querySelectorAll("script");
for(var i = 0; i < scripts.length; i++){
scripts[i].parentNode.removeChild(scripts[i]);
}
})()
Це не видалить жодної функціональності, оскільки стан сторінки вже змінено і відображено в поточному глобальному контексті виконання. Наприклад, якщо сторінка завантажила бібліотеку, таку як jQuery, видалення тегів не означатиме, що jQuery більше не піддається впливу, оскільки вона вже додана до середовища виконання сторінки. По суті, це лише те, що інструмент перевірки DOM не показує елементи сценарію, але він підкреслює, що елементи сценарію, щойно виконані, є лише текстом.
1. unor, Чт 07 липня 2016, wutzebaer, "Коли повинні бути видні теги і чому вони можуть?", 1 липня о 10:53, https://stackoverflow.com/a/38147398/1026459
<style>
із вмістом для редагування. Хороший спосіб побачити ефекти в режимі реального часу.