Существует ли структура JavaScript, которая фокусируется на расширении JavaScript путем выравнивания различий в реализации?Я не имею в виду среду, которая просто обеспечивает одинаковую функциональность в разных браузерах, но что-то, что заставляет нестандартные браузеры вести себя так, как будто они соответствуют стандартам.
По сути, я хочу что-то, что делает для JavaScript то, что ie7.js
делает для MSIE или html5shiv
делает для элементов HTML5.Или различные обходные пути для веб-сокетов или Canvas.
Полагаю, jQuery и тому подобное могли бы сработать, но я бы предпочел что-то, что позволит мне написать normal , соответствующий стандартам JavaScriptкак если бы между браузерами не было различий.
РЕДАКТИРОВАТЬ: Поскольку любой другой ответ, кажется, указывает на то, что да, jQuery - это JavaScript, и, да, большинство сред JavaScript пытаются улучшить кросс-браузерную совместимость, позвольте мнепоясните, что я имею в виду.
Различия между реализациями JavaScript в разных браузерах не имеют большого отношения к самому языку в наши дни.Помимо нескольких встроенных методов, отсутствующих в старых браузерах, типы в большинстве случаев также ведут себя одинаково.Но есть все еще различия, особенно между существующим статус-кво (Chrome / Firefox / Safari) и устаревшими версиями MSIE (то есть MSIE 7).В частности, DOM имеет тенденцию иметь менее или более тонкие особенности своего API.
Мне не нужна просто инфраструктура, которая позволяет мне писать JavaScript, который работает в большинстве браузеров.Это десять центов.Я хочу тонкий слой, который позволяет мне писать код, который работает как в современных браузерах, так и в старых браузерах.jQuery, Dojo и т. д. выходят далеко за рамки этого и предоставляют свои собственные уникальные API-интерфейсы вместо объединения существующих.
Сказать «использовать jQuery» - все равно, что сказать, что я должен использовать Rich Ajax Platform
(или другие структуры генерации кода)если я хочу избежать различий между браузерами.Я не хочу «замену», я хочу «исправление» (не буквально).
РЕДАКТИРОВАТЬ 2: Просто чтобы понять суть: я не ищу только какие-либо рамки.Я хорошо знаком с jQuery, пробовал YUI и сейчас пытаюсь попробовать Dojo.Я не просто хочу "хорошие" рамки.Я хочу тот, который соответствует моему очень конкретному описанию.Ничего страшного, если ничего подобного нет, хотя было бы интересно узнать, почему нет (то есть по техническим причинам, а не «все слишком заняты использованием jQuery»).