使用google chart在IE里的问题(在FIREFOX, CHROME没有问题)
2011-08-19 17:55
471 查看
Problem 1: 如果draw google chart在style=”display:none”的<div>里,那么纵坐标的y scale label就会看不见
Problem 2: 如果googlechart结合jquery的slideToggle来达到展开收埋的效果会有问题
IE执行下列的代码就会看到上面2个问题
解决第一个问题的办法是,不能先用style="display:none"使得<div>不见,然后再draw google chart,而应该是去掉style="display:none",先draw google chart,然后再用javascript来使得<div>不见。
解决第二个问题的方法是,不要使用slideToggle,使用show/hide则没有问题。
还有一点需要注意的是:google.setOnLoadCallback可以相当于jquery的$(document).ready(function(){});,你只要把写在$(document).ready(function(){}里的代码搬去setOnLoadCallback也可。
下面是在IE里没有问题的代码:
Problem 2: 如果googlechart结合jquery的slideToggle来达到展开收埋的效果会有问题
IE执行下列的代码就会看到上面2个问题
<html> <head> <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script src="../js/jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> google.load("visualization", "1", {packages:["corechart"]}); google.setOnLoadCallback(drawChart); function drawChart() { var data = new google.visualization.DataTable(); data.addColumn('string', 'Year'); data.addColumn('number', 'Sales'); data.addColumn('number', 'Expenses'); data.addRows(4); data.setValue(0, 0, '2004'); data.setValue(0, 1, 1000); data.setValue(0, 2, 400); data.setValue(1, 0, '2005'); data.setValue(1, 1, 1170); data.setValue(1, 2, 460); var chart = new google.visualization.ColumnChart(document.getElementById('chart_div')); chart.draw(data, {width: 400, height: 240, title: 'Company Performance', hAxis: {title: 'Year', titleTextStyle: {color: 'red'}} }); } $(document).ready(function(){ $("#show").click(function () { $("#chart_div").slideToggle("fade"); }); $("#hide").click(function () { $("#chart_div").slideToggle("fade"); }); }); </script> </head> <body> <button id="show">Show Chart</button> <button id="hide">Hide Chart</button> <div id="chart_div" style="display:none"></div> </body> </html>
解决第一个问题的办法是,不能先用style="display:none"使得<div>不见,然后再draw google chart,而应该是去掉style="display:none",先draw google chart,然后再用javascript来使得<div>不见。
解决第二个问题的方法是,不要使用slideToggle,使用show/hide则没有问题。
还有一点需要注意的是:google.setOnLoadCallback可以相当于jquery的$(document).ready(function(){});,你只要把写在$(document).ready(function(){}里的代码搬去setOnLoadCallback也可。
下面是在IE里没有问题的代码:
<html> <head> <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script src="../js/jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> google.load("visualization", "1", {packages:["corechart"]}); google.setOnLoadCallback(function() { // Place init code here instead of $(document).ready() drawChart(); $("#chart_div").hide(); //先draw google chart,再hide div $("#show").click(function () { $("#chart_div").show(); }); $("#hide").click(function () { $("#chart_div").hide(); }); }); function drawChart() { var data = new google.visualization.DataTable(); data.addColumn('string', 'Year'); data.addColumn('number', 'Sales'); data.addColumn('number', 'Expenses'); data.addRows(2); data.setValue(0, 0, '2004'); data.setValue(0, 1, 1000); data.setValue(0, 2, 400); data.setValue(1, 0, '2005'); data.setValue(1, 1, 1170); data.setValue(1, 2, 460); var chart = new google.visualization.ColumnChart(document.getElementById('chart_div')); chart.draw(data, {width: 400, height: 240, title: 'Company Performance', hAxis: {title: 'Year', titleTextStyle: {color: 'red'}} }); } </script> </head> <body> <button id="show">Show Chart</button><button id="hide">Hide Chart</button> <div id="chart_div">aaa</div> </body> </html>
相关文章推荐
- python爬虫,selenium使用,Firefox-chrome-IE问题解决方法,selenium的基本操作
- 【转自 技术.人生】[ajax]FireFox和IE下使用ajax的一些小问题总结
- 浏览器兼容性问题收集(IE,Firefox,Chrome,Safri)
- 使用iCloud让Safari与Chrome/FireFox/IE的书签保持同步
- 鼠标滚动事件onscroll在firefox/chrome/Ie中执行次数的问题处理
- 【求助】Html弄的比较少,问一个弱弱的问题,为什么下面代码在IE中tr之间有空白行,而在Firefox中没有空白
- MVC使用uploadify3.1 IE下正常 firefox、chrome出现HTTPERROR 302错误解决办法
- IE、Firefox、Chrome中兼容问题
- Chrome firefox ie等浏览器空格( )兼容问题
- WEB前端:浏览器(IE+Chrome+Firefox)常见兼容问题处理--02
- IE firefox chrome收藏夹同步问题
- 关于 IE firefox Chrome下的通过用js 关闭窗口部分不支持问题解决
- 解决JS:window.close()在Firefox下的不能关闭的问题,兼容IE/Firefox/Chrome
- PDF在线阅读控件多浏览器(IE,firefox,chrome,opera等)中的使用
- PC端各浏览器JavaScript问题【Chrome、Firefox、IE】——长期更新
- Python-selenium-Firefox-chrome-IE问题解决方法
- 解决IE,Firefox,chrome,safari浏览器中iframe显示高度自适应问题
- 在IE11和Firefox下attr和prop的兼容性问题(IE低版本和google没有问题)
- 解决Td内容为空时不显示边框的问题-兼容IE、firefox、chrome
- 关于IE,Chrome,Firefox浏览器的字符串拼接问题