Javascript 脚本函数在Chrome中运行一次,但在Firefox中运行良好

Javascript 脚本函数在Chrome中运行一次,但在Firefox中运行良好,javascript,cross-browser,d3.js,nvd3.js,Javascript,Cross Browser,D3.js,Nvd3.js,我正在使用NVD3制作几个图形。我在addGraph函数中添加了一个console.log,它添加了一个特定的图形 我想知道我的代码中是否有错误?我正确使用图书馆了吗?我不知道从哪里开始解决这个问题 FIREFOX(所有图形都正确显示) 总数444 这里调用addgraph 总数518 这里调用addgraph 总数572 这里调用addgraph 总数553 这里调用addgraph 总数617 这里调用addgraph 总数595 这里调用addgraph 谷歌浏览器 全南 全南 全南 全南

我正在使用NVD3制作几个图形。我在addGraph函数中添加了一个console.log,它添加了一个特定的图形

我想知道我的代码中是否有错误?我正确使用图书馆了吗?我不知道从哪里开始解决这个问题

FIREFOX(所有图形都正确显示)

总数444 这里调用addgraph

总数518 这里调用addgraph

总数572 这里调用addgraph

总数553 这里调用addgraph

总数617 这里调用addgraph

总数595 这里调用addgraph

谷歌浏览器

全南

全南

全南

全南

全南

这里调用addgraph 总数108

总数138

总数145

总数146

代码

调用脚本

<script src="../../../data/novus/lib/d3.v2.js"></script>
<script src="../../../data/novus/nv.d3.js"></script>
<script src="../../../data/novus/src/tooltip.js"></script>
<script src="../../../data/novus/src/models/legend.js"></script>
<script src="../../../data/novus/src/models/axis.js"></script>
<script src="../../../data/novus/src/models/scatter.js"></script>
<script src="../../../data/novus/src/models/line.js"></script>
<script src="../../../data/novus/src/models/multiChart.js"></script>

循环中

<script src="../../../data/novus/nv.d3.js"></script>
<script>
    var impressions = [];
    var clickrate = [];
    var trial_impressions = [];
    var trial_clickrate = [];
    var testdata = [{
        "key" : "Impressions",
        "type" : "line",
        "values" : impressions,
        "yAxis" : 1
    }, {
        "key" : "Clicks",
        "type" : "line",
        "values" : clickrate,
        "yAxis" : 2
    }, {
        "key" : "T Impressions",
        "type" : "line",
        "values" : trial_impressions,
        "yAxis" : 1
    }, {
        "key" : "T Clicks",
        "type" : "line",
        "values" : trial_clickrate,
        "yAxis" : 2
    }].map(function(series) {
        series.values = series.values.map(function(d) {
            return {
                x : d[0],
                y : d[1]
            }
        });
        return series;
    });
    var chart;

    nv.addGraph(function() {
        console.log("Add");
        chart = nv.models.multiChart().margin({
            top : 30,
            right : 60,
            bottom : 50,
            left : 70
        }).x(function(d, i) {
            return i
        }).color(d3.scale.category10().range());

        chart.xAxis.tickFormat(function(d) {
            var dx = testdata[0].values[d] && testdata[0].values[d].x || 0;
            if ( typeof (dx) == undefined || d > 1000) {
                dx = new Date(d);
            } else {
                dx = new Date(dx);
            }
            return dx ? d3.time.format('%x')(dx) : '';
        });

        chart.yAxis1.tickFormat(d3.format(',.1f'));
        v

        chart.yAxis2.tickFormat(d3.format(',.4f'));

        d3.select('#chart1<?= $chartID?> svg').datum(testdata).transition().duration(500).call(chart);
        return chart;
    });

</script>

var=[];
var点击率=[];
var试验_印象=[];
var试验点击率=[];
var testdata=[{
“关键”:“印象”,
“类型”:“行”,
“价值观”:印象,
“雅克西斯”:1
}, {
“按键”:“点击”,
“类型”:“行”,
“值”:点击率,
“雅克西斯”:2
}, {
“关键”:“T印象”,
“类型”:“行”,
“价值观”:审判印象,
“雅克西斯”:1
}, {
“键”:“T单击”,
“类型”:“行”,
“价值”:试用点击率,
“雅克西斯”:2
}].map(函数(系列){
series.values=series.values.map(函数(d){
返回{
x:d[0],
y:d[1]
}
});
返回序列;
});
var图;
nv.addGraph(函数(){
控制台日志(“添加”);
图表=nv.models.multiChart()页边距({
前30名,
右:60,
底数:50,
左:70
}).x(功能(d,i){
返回i
}).颜色(d3.比例.类别10().范围());
chart.xAxis.tickFormat(函数(d){
var dx=testdata[0]。值[d]&&testdata[0]。值[d]。x | | 0;
如果(类型(dx)=未定义| | d>1000){
dx=新日期(d);
}否则{
dx=新日期(dx);
}
返回dx?d3.time.format(“%x”)(dx):“”;
});
chart.yAxis1.tickFormat(d3.format(',.1f');
v
chart.yAxis2.tickFormat(d3.format(',.4f');
d3.选择('#chart1 svg').datum(testdata).transition().duration(500).调用(chart);
收益表;
});
调用图形的div

<div id='chart1<?= $chartID?>' style="width:1110px;height:300px;font-size:11px;margin-top:5px">
    <svg></svg>
</div>

我最好的猜测是这些数字有数学计算。在这种情况下,使用函数parseFloat()可以将字符串转换为数字,以便正确进行数学计算。

代码可能会有很大帮助。您也需要发布用于生成这些结果的代码-否则我们不知道您是否做错了任何事情。您是否能够在NVD3站点上运行示例?是的,我有,当我尝试渲染多个图形时,它可以在firefox上正常工作。