【发布时间】:2018-03-12 15:12:57
【问题描述】:
这可能真的很简单,但我就是不知道如何在 Tradingview 小部件中更改股票代码。我希望图表更改为我得到的数组中的代码。图表需要每 30 秒用一个新的代码更改一次,并且永远这样做。
这是我目前得到的:
<div class="tradingview-widget-container">
<div id="tradingview_5889e"></div>
<div class="tradingview-widget-copyright"><a href="https://www.tradingview.com/symbols/NYSE-RIG/" rel="noopener" target="_blank"><span class="blue-text">RIG</span> <span class="blue-text">chart</span> by TradingView</a></div>
<script type="text/javascript" src="https://s3.tradingview.com/tv.js"></script>
<script type="text/javascript">
var i = 0
function createchart(){
var companies = ['NYSE:SDRL','NYSE:RIG','CHXEUR:SEVDRO','NYSE:TK','CHXEUR:GBBP']
new TradingView.widget(
{
"width": 980,
"height": 610,
"symbol": companies[i],
"interval": "15",
"timezone": "Etc/UTC",
"theme": "Light",
"style": "1",
"locale": "en",
"toolbar_bg": "#f1f3f6",
"enable_publishing": false,
"hide_top_toolbar": true,
"save_image": false,
"hideideas": true,
"container_id": "tradingview_5889e"
}
);
i++;
}
setInterval(createchart(),10000)
</script>
</div>
希望你们能帮帮我。在这方面苦苦挣扎太久了。
【问题讨论】:
-
setInterval(createchart,10000)可以工作 -
如果你将不变的 var
companies移到createchart()函数之外,将你的 TV.widget 分配给一个变量,最后有另一个由 setInterval 调用的函数,效率会更高。这个额外的函数只是调用widget_variable.setSymbol(symbol, interval, [callback])避免图表每次都重新初始化。
标签: javascript html setinterval tradingview-api