Показать сообщение отдельно
  #1 (permalink)  
Старый 15.08.2016, 14:32
Новичок на форуме
Отправить личное сообщение для AlexanderK Посмотреть профиль Найти все сообщения от AlexanderK
 
Регистрация: 15.08.2016
Сообщений: 1

Динамическая подгрузка виджета
Добрый день, часы гугления не дали результата, проблема в следующем:

есть виджет, рисующий красивые графики:

<script type="text/javascript" src="https://s3.amazonaws.com/tradingview/tv.js"></script>
<script type="text/javascript">
new TradingView.widget({
"width": 980,
"height": 610,
"symbol": "NASDAQ:AAPL",
"interval": "D",
"timezone": "Etc/UTC",
"theme": "White",
"style": "1",
"locale": "ru",
"toolbar_bg": "#f1f3f6",
"enable_publishing": false,
"hide_top_toolbar": true,
"save_image": false,
"hideideas": true
});
</script>

Кидаю код на отдельную страницу, все работает.

Но надо сделать что-то вроде списка параметров "symbol" (из списка параметров виджета), по клику на которые график бы перерисовывался(виджет обновлялся с новыми параметрами).

Использовал ajax, сам скрипт вызова виджета в страницу загружается, но, видимо, не исполняется - графика нет.

Кидал код вызова на другую страницу, вызывал ее из кода основной страницы - также не помогло.

Я не специалист, подскажите, хотя бы в какую сторону копать.

P.S. Нашел решение, может кому пригодится. Документации к виджету нет, если указать список инструментов, то список будет на виджете, необходимо было сделать табличку с инструментами, а внизу область с графиком, которая будет обновляться по щелчку на инструмент. Решил через iframe. Добавляем код вызова виджета на страничку, обновляем страничку, идем в код страницы, оттуда вытаскиваем ПРЯМУЮ ссылку на график, обернутую в iframe. Эту ссылку и можно использовать при обновлении содержимого Iframe, например так:

function ifrUpdt() {
iframe = document.getElementById('ifr');
iframe.src = "https://dwq4do82y8xi7.cloudfront.net/widgetembed/?symbol=NASDAQ%3AGOOG&amp;interval=D&amp;symboledi t=1&amp;toolbarbg=f1f3f6&amp;studies=&amp;hideidea s=1&amp;theme=White&amp;style=1&amp;timezone=Etc%2 FUTC&amp;showpopupbutton=1&amp;studies_overrides=% 7B%7D&amp;overrides=%7B%7D&amp;enabled_features=%5 B%5D&amp;disabled_features=%5B%5D&amp;showpopupbut ton=1&amp;locale=en&amp;utmsource=ankyr.net&amp;ut mmedium=ankyr.net/personal/dev/page1.html";
document.getElementById('ifr').contentWindow.locat ion.reload(true);
}

Последний раз редактировалось AlexanderK, 15.08.2016 в 17:45.
Ответить с цитированием