Давая тег script код
я наткнулся на сценарий, где давая script
элемента id
атрибут легко решит проблему. Однако, после прочтения о script
элемент w3schools и quirksmode кажется, это может иметь некоторые непредвиденные последствия.
кто-нибудь сталкивался с любой из этих проблем с браузерами, такими как Chrome, Safari, FF3 up и IE 7 up?
5 ответов:
это нормально во всех текущих браузерах.
единственный браузер, который получил
<script id>
неправильным был Netscape 4, о котором мы давно перестали заботиться.эта страница quirksmode, похоже, сильно устарела, что с ее использованием
language
атрибуты, скрипт<!--
прячется, иapplication/x-javascript
. Его советы о том, как избежать<script>
на<body>
(и ввод его в<head>
вместо этого) расходится с сегодняшней поощряемой практикой.если мы говорим
<script>
проблемы совместимости атрибутов:defer
не работает везде, так что не полагаться на него;charset
не работает везде, и ни один параметр charset в контентном типе обслуживаемого скрипта не работает, поэтому ваш набор символов скрипта лучше соответствует странице;type
должно бытьtext/javascript
и не один из нерабочих альтернатив педанты, которые написали RFC 4329 хотели бы, чтобы вы использовали.
Если вам все еще приходится поддерживать Netscape 4, у вас есть много проблем – и жалость и соболезнования остального мира разработчиков.
короткий ответ, я бы не стал беспокоиться об этом.
Я не думаю, что браузер будет иметь проблемы, добавив до
script
элемент.на некоторых моих сайтах, которые загружают дополнительные JavaScripts через JavaScript, я добавил
class
атрибут, чтобы сделать ссылки на них проще. Валидатор не жаловался.
Я знаю, что прошло много времени, но я подумал, что было бы неплохо указать на это, когда вы смотрите на W3 Schools определение тега скрипта, вы видите в какой-то момент, что
тег также поддерживает глобальные атрибуты в HTML.
и среди этих атрибутов, та-да, вы найдете свой прекрасный код.
то же самое касается целого ряда тегов, что, безусловно, даст нам большую гибкость при вытягивании эти милые штучки из шляпы.