Почему может не работать скрипт?
Всем привет, сайт на ВП.
Как убрать по-умолчанию не знаю, поэтому хочу удалить атрибуты type='text/css' media='all' и type='text/javascript' из всех ссылок через js. Они в принципе не мешают, но и разницы в их наличии/отсутствии нет. Хотя валидатор ругается :) Подскажите, почему скрипт может не работать? В песочнице все работает. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Comfortaa' type='text/css' media='all' /> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Chakra+Petch" type='text/css' /> </head> <body> <script> const linkRel = document.querySelectorAll("[rel='stylesheet']"); linkRel.forEach(function(linkRel) { linkRel.removeAttribute('type'); linkRel.removeAttribute('media'); }); </script> <style> .container { width: 100vw; height: 100vh; background-color: #333; } </style> <div class="container"></div> </body> </html> |
Цитата:
|
у меня убунту - хромиум, все равно не показывает
|
madeas,
а консоль что пишет? может load обернуть скрипт? или сделать проверку есть атрибут, только тогда его удалять. |
Ничего не пишет, проверка норм, но хз что не так.
Пришлось использовать php, оставлю тут, может кому пригодится. add_filter('style_loader_tag', 'codeless_remove_type_attr', 10, 2); add_filter('script_loader_tag', 'codeless_remove_type_attr', 10, 2); function codeless_remove_type_attr($tag, $handle) { return preg_replace( "/type=['\"]text\/(javascript|css)['\"]/", '', $tag ); } |
madeas, я бы на вашем месте не response обрабатывал, а посмотрел на функцию, которая скрипты регистрирует.
|
Часовой пояс GMT +3, время: 00:35. |