0
我有幾個重複的Highchart線圖使用相同的vars
配置。從另一個單獨的javascript函數訪問值
graph.js
function getColor(){
var getColor ={
facebook: "#3d599b",
twitter: "#00abee",
instagram: "#517fa4",
soundcloud: "#fa3d00",
youtube: "#d43c3b",
tumblr: "#3d5a71",
vine: "#00b589",
foursquare: "#0abadf",
linkedin: "#007ab9",
vimeo: "#1ab7ea",
fivehundredpx: "#000000",
wordpress: "#257ba0",
rdio: "#028ed4",
behance: "#000000",
flickr: "#ff0084",
google: "#e52d27",
facebook_page: "#3d599b"
};
}
new_graph.js
var seriesOptions = [],
yAxisOptions = [],
seriesCounter = 0,
names = <%= raw get_engagement_data(@user,params[:provider],params[:type]) %>;
$.each(names, function(i, name) {
seriesOptions[i] = {
type: 'areaspline',
lineColor: getColor[name[2]],
lineWidth: 2,
pointInterval: 24 * 3600 * 1000,
name: name[0],
data: name[1],
fillColor: "#000000",
fillOpacity: 1,
marker: {
enabled: false,
fillColor: getColor[name[2]]
}
};
// As we're loading the data asynchronously, we don't know what order it will arrive. So
// we keep a counter and create the chart when all the data is loaded.
seriesCounter++;
if (seriesCounter == names.length) {
createChart();
}
});
從DIFF試圖訪問變量從getColor
功能。 JavaScript文件,但沒有工作。
回報從'getColor',改變'var'結果(該聲明一個局部變量)'return'然後用'VAR色=的getColor()'當你需要訪問它。 –
嗨,感謝您的建議。現在它工作得很好。我會一如既往地關注'return'。謝謝。 – xirukitepe