Почему спрайты svg не видны на сервере. В залп все хорошо

Возникла такая проблема, что svg sprite'ы вообще нигде не видно, кроме самого глотка. Вот что на хостинге ====>

А теперь включенный глоток и все отлично работает ===>

Скрипт для добавления спрайтов в тело

;( function( window, document ) {
  'use strict';

   var file     = 'img/symbols.svg',
    revision = 1;

    if( !document.createElementNS || !document.createElementNS( 'http://www.w3.org/2000/svg', 'svg' ).createSVGRect )
    return true;

    var isLocalStorage = 'localStorage' in window && window[ 'localStorage' ] !== null,
    request,
    data,
    insertIT = function()
    {
        document.body.insertAdjacentHTML( 'afterbegin', data );
    },
    insert = function()
    {
        if( document.body ) insertIT();
        else document.addEventListener( 'DOMContentLoaded', insertIT );
    };

    if( isLocalStorage && localStorage.getItem( 'inlineSVGrev' ) == revision )
    {
    data = localStorage.getItem( 'inlineSVGdata' );
    if( data )
    {
        insert();
        return true;
    }
}

try
{
    request = new XMLHttpRequest();
    request.open( 'GET', file, true );
    request.onload = function()
    {
        if( request.status >= 200 && request.status < 400 )
        {
            data = request.responseText;
            insert();
            if( isLocalStorage )
            {
                localStorage.setItem( 'inlineSVGdata',  data );
                localStorage.setItem( 'inlineSVGrev',   revision );
            }
        }
    }
    request.send();
}
catch( e ){}

}( window, document ) );

1 ответ

Вы использовали оператор отладки, чтобы убедиться, что вы получаете правильные данные на стороне сервера?

Затем, ПОСЛЕ того, как вы можете использовать console.log в этом js-скрипте для записи данных на консоль (или использовать отладчик chrome javascript и точки останова).

Я хотел бы убедиться, что вы получаете правильные данные с сервера. Если сервер получает ошибку 500, JS обычно просто прекращает выполнение (иногда это будет продолжаться, но его ответ будет неверным).

На этой странице описано, как использовать отладчик Chrome:

Начните с отладки JavaScript в Chrome DevTools

Другие вопросы по тегам