2016-02-23 2 views
1

Я использую следующий код JavaScript для создания Highchart из локального файла csv. Это корректно работает в Safari и Chrome (необходимо включить --allow-file-access-from-files для работы в Chrome), однако по какой-то причине Firefox не работает. Я попытался изменить значение security.fileurl.strict_origin_policy на false, но это не изменит ошибку или не отобразит диаграммы.Highcharts не отображается в Firefox

Я получаю синтаксическую ошибку JS для файла csv для ': 1: 1', который я предполагаю, является столбцом строки 1. Я не понимаю, почему он работает для 2 браузеров, а не для Firefox. Я предполагаю, что это что-то похожее на Chrome, где мне нужно разрешить доступ к локальным файлам, но, кроме изменения about:config, я не уверен, как этого добиться.

Любые объяснения или предложения приветствуются.

$.get(data, function(csv) { 
     $('#container').highcharts({ 
     chart: { 
      zoomType: 'x', 
      type: 'column', 
     }, 
     data: { 
      csv: csv, 
      lineDelimiter: "\n", 
     }, 
     title: { 
       text: 'CSV file data' 
      }, 
     yAxis: { 
      title: { 
       text: 'Bytes' 
      } 
     } 
     }); 
    }); 
+0

Это может быть проблемой локализации, как светлячок устанавливается на ан-нас и хром установлен ан-гб или something..if вы получаете синтаксическую ошибку, то файл открывается и читать я предположим, что это вряд ли будет проблемой доступа к файлу? –

+0

@secretsquirrel Я действительно не знаю, если честно, я думал, что это может быть что-то похожее на Chrome, где вы должны разрешить доступ к файлам из локальных файлов. Но я не могу заставить его работать. Я нашел эту ссылку, что у кого-то была эта проблема, но я не могу найти решение forum.jquery.com/topic/jquery-csv-firefox-weird-syntax-error – Catherine

+1

@ Кэтрин ок видит ответы на этот вопрос: http: //stackoverflow.com/questions/8185912/error-with-jquery-get-of-a-csv-file –

ответ

2

Оказывается, что добавление «текст» после того, как $.get(data, function(csv) {} решает эту проблему для светлячок. Не совсем понятно, почему. Для загрузки требуется больше времени, чем Chrome или Safari, но он успешно загружается.

При условии, что вы включили --allow-file-access-from-files, он будет работать в Chrome и не вызывает никаких изменений в Safari.

$.get(data, function(csv) { 
     $('#container').highcharts({ 
     chart: { 
      zoomType: 'x', 
      type: 'column', 
     }, 
     data: { 
      csv: csv, 
      lineDelimiter: "\n", 
     }, 
     title: { 
       text: 'CSV file data' 
      }, 
     yAxis: { 
      title: { 
       text: 'Bytes' 
      } 
     } 
     }); 
    }, "text"); 
+0

См. [API] (https://api.jquery.com/jquery.get/#jQuery-get- URL-данных на успех DATATYPE). Похоже, что Firefox требует строгий 'dataType' при загрузке файлов из файловой системы. –

Смежные вопросы