我有一个包含多个Google图表的页面工作正常但我只想在加载此特定页面时加载这些功能,以优化其他页面上的加载时间。 不幸的是我一直在:
ReferenceError: drawRevenuesExpenses is not defined
google.charts.setOnLoadCallback(drawRevenuesExpenses);
我的页面如下:
Footer.php(我所有页面都很常见):
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<!-- For general javascript functions -->
<script src="<?php echo base_url();?>js/home.js" type="text/javascript"></script>
home.js:
$(document).ready(function(){
// Some JS functions
if(document.getElementById('include_charts')){ // Problem is here
//GOOGLE CHARTS START
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawRevenuesExpenses);
function drawRevenuesExpenses() {
// my chart
}
}
仅在我添加if(document.getElementById('include_charts'))
时才会引入问题
我尝试使用if (window.location.href == 'http://127.0.0.1/project/Controller')
,但我遇到了同样的错误。
似乎检查div ID是否存在或当前URL不起作用。我在循环中添加了一个“警报”并且它已正确执行。