JSIO URLs

The clever bit about JSIO is the placeholder URLs – i.e. the “jsio.gif#…” that goes in your image src attributes and background-image CSS properties. Everything after the “#” is the filename of the image that should be displayed. It doesn’t have to be the filename at all, it could just be a single letter or number or symbol or whatever. It doesn’t matter to JSIO. To JSIO, everything after the “#” is just a key into the resources object that holds data uri encoded images. As long as the key is unique (which it will be if you use filenames, since no two files in the same directory can have the same name), JSIO is happy.

Using filenames as keys into our resources object is beneficial to humans. Much more beneficial than coordinates in a sprite, simply because (hopefully) the filenames are meaningful; they describe the image. In comparison to sprites, the JSIO resources object also makes maintaining your image data much easier as it is trivial to add or remove images without having to move other images around within the sprite (and consequently all coordinates referencing your moved image).

Another benefit of using filenames as keys into the JSIO resources object is for fallback. If JSIO detects your browser is IE7 or lower, it’ll strip out “jsio.gif#” leaving just your image key as the image src, which is hopefully a valid URL to the original image. Also, if JSIO detects you’re running IE8 and the image data is larger than 32KB it’ll do the same thing*.

* …but not yet in v1.0.0 alpha

Since the image key is after the “#” (it is the URL “fragment”), your browser won’t send multiple requests for the 1*1px jsio.gif file – it’ll just send one request, cache the response, and use it again. By the way, the jsio.gif image is just a transparent 1*1px gif (for maximum efficiency), but it could be an “spinner” image or something, which is shown temporarily whilst the JSIO resources file is downloaded.

This post is about JSIO – JSIO is a tiny library that allows you to make fewer requests to your server by packaging all your site image data in a JavaScript file in data uri format. The official site for JSIO can be found here: jsio.freestyle-developments.co.uk. You can read more about why I started this project here.

2,371 thoughts on “JSIO URLs

  1. Строительный портал https://garant-jitlo.com.ua современные технологии нормы и стандарты выбор материалов инженерия и безопасность. Экспертные рекомендации инструкции и реальные примеры работ — понятно и по делу.

  2. Компания BritishSchool https://britishschool.kiev.ua профессиональные тренинги семинары и курсы для детей и взрослых. Обучение с опытными преподавателями современные методики практические навыки и уверенный результат. Онлайн и офлайн форматы.

  3. Портал о строительстве https://repair-house.kiev.ua и ремонте без лишней теории: практические советы обзоры материалов расчёты инструменты и этапы работ. Помогаем планировать проекты контролировать качество и экономить бюджет.

  4. Проблемы с алкоголем? вывод из запоя адреса помощь врача детоксикация стабилизация состояния и наблюдение. Конфиденциально без постановки на учет с учетом возраста и сопутствующих заболеваний.

  5. Подборка лучших МФО на https://mikrozaym365.ru оформите микрозайм онлайн на карту за 5 минут. Первый займ под 0 для новых клиентов. Без отказов и проверок. Мгновенное одобрение перевод на любую карту. Получите деньги сегодня

  6. Ищешь казино? лучшее казино лицензия бонусы выплаты игры и отзывы игроков. Сравниваем условия безопасность и удобство чтобы помочь выбрать надежное казино для игры онлайн.

  7. Страдаете от алкоголизма? вывод из запоя круглосуточно цены анонимная медицинская помощь с выездом врача. Осмотр капельницы контроль состояния и поддержка пациента в комфортных условиях. Работаем круглосуточно строго по медицинским показаниям.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>