我试图使用
JQuery获取核心图表的一些图形功能,但是一旦加载了可视化API,我就无法获得任何文档元素.以下是我的示例示例:
$(document).ready(function() { if ($("#myId").length > 0) { google.load("visualization","1.1",{ packages: ["corechart"] }); google.setonLoadCallback(function() { if ($("#myId").length > 0) { alert("Found a match!!"); }else{ alert("Not found!!"); } }); } });
<html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> <link rel="stylesheet" href="style.css" /> <script src="script.js"></script> <script type="text/javascript" src="https://www.google.com/jsapi"></script> </head> <body> <h1>Hello Plunker!</h1> <div id="myId">Hello from Div!!</div> </body> </html>
我希望在我的if块中执行警报.我只是在检查了#myId后才加载可视化软件包,但是它在回调中丢失了(而不是所有的html元素).请指教
解决方法
我认为它可能与setonLoadCallback有关.
但是,您可以在load语句中添加对回调的引用.
但是,您可以在load语句中添加对回调的引用.
$(document).ready(function(){ if ($("#myId").length > 0) { google.load('visualization','1',{ 'packages': ['corechart'],'callback': function(){ if ($("#myId").length > 0) { alert("Found a match!!"); }else{ alert("Not found!!"); } } }); } });
<html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> <link rel="stylesheet" href="style.css" /> <script src="script.js"></script> <script type="text/javascript" src="https://www.google.com/jsapi"></script> </head> <body> <h1>Hello Plunker!</h1> <div id="myId">Hello from Div!!</div> </body> </html>
我认为setonLoadCallback会带来双重责任,而不仅仅是等待google.load …还有文件由于文件已经加载,可能会有些东西被搞砸……
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。