2015-05-03 2 views
3

Я пытаюсь запустить функцию JavaScript в R. Одна часть кода требует от меня передать функцию JavaScript, содержащую имя файла в виде строки. Поскольку строка содержит путь к файлу, это приводит к тому, что все ад разрушается с помощью одиночных и двойных кавычек и обратных косых черт. Вот что у меня естьКак написать функцию javascript внутри строки

d3chart$chart(tooltipContent = "#! function(item, x, y, e,z){ 
    return '' + '<img src=\"/Users/cBl.png\"' + '/>' 
      } !#") 
d3chart 

Результат должен состоять в том, чтобы я мог видеть изображение в виде всплывающей подсказки на диаграмме. Все это работает без ошибок, но на диаграмме я получаю знак вопроса вместо изображения, которое, как я полагаю, означает, что он не может следовать пути имени файла. Я думаю, это связано с тем, что я не уверен, как правильно записать эту строку filepath, чтобы вызвать часть img src.

+1

Если проблема связана не с ускорением, это может быть относительный URL-адрес изображения. Является ли путь '/ Users/cB1.png' в том же каталоге, где создается HTML? –

+0

Как узнать, где генерируется html? –

+0

Я запустил его в chrome и получил Не удалось загрузить ресурс: net :: ERR_FILE_NOT_FOUND, поэтому, наверное, проблема в том, что путь к файлу неверен относительно того, где генерируется html? –

ответ

0

Я думаю, что его разрыв строки, который вызывает всю строку, является синтаксической ошибкой, также я бы удалил return '' +, он не имеет значения Я добавил полный путь к расположению файла, чтобы вы могли отлаживать для того, чтобы получить лучшее понимание, если что в вопросе расположения файла неправильно

вы можете добавить \ п \ до конца строки:

d3chart$chart(tooltipContent = "#! function(item, x, y, e,z){ \n\ 
    return '<img src=\"'+document.location.hostname+'/'+document.location.pathname+'/Users/cBl.png\"' + '/>'\n\ 
      } !#") 
d3chart 
+0

. Я все еще получаю тот же результат с этим –

+1

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

0

Его немного трудно точно знать, что вы собираетесь так как javascript немного испорчен, но это должно работать:

d3chart$chart(tooltipContent = "#! function(item, x, y, e,z) { return '<img src=\'/Users/cBl.png\' />' } !#") 
+0

в основном проблема кажется быть неуместным '' 'и' ''. Преобразовал его, чтобы не использовать '' 'в javascript, но просто убегает' \ ''. –

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