我想了解如何在使用Google CDN的google.load方法加载时使用jQuery。与google.load一起使用jQuery
将init代码放在setOnLoadCallback函数中效果很好,但在标记中为事件处理函数定义函数似乎不起作用。在下面的例子中,P按钮按预期工作,但Div按钮不起作用。
是的,在这个例子中,我可以把div的onclick处理程序也在setOnLoadCallback功能,但是否意味着所有 jQuery代码已经在那里?
帮助?由于
<p id="p">Content</p><button type="button" id="btn1">P</button>
<div id="div">Div</div><button type="button" id="btn2" onclick="btn2()">Div</button>
<script src="http://www.google.com/jsapi"></script>
<script>
function btn2() {
$("#div").toggle("slow");
}
google.load("jquery", "1.3.2");
google.setOnLoadCallback(function() {
$("#btn1").click(function() {
$("p").toggle("slow");
});
});
</script>
我同意但我继承了很多嵌入事件处理程序的标记:-(我想在事件处理程序的实现中使用jQuery 从迄今为止的响应看来,这可以**不是使用google.load技术完成的,它必须使用库的直接路径来完成,所以这似乎是更灵活的方法,不知道为什么谷歌推荐使用google.load! – 2009-12-07 16:29:11
我个人不使用CDN我知道好处,但我不喜欢让我的东西超出我的控制... id相当jsut使用缩小器来压缩我所有的CSS到singel文件和所有我的js到服务器端的单个文件之前我发送,我没有得到缓存的好处,但我可以与更好的控制和可用性的garauntee住在一起。我不是所有相信云的:-) – prodigitalson 2009-12-07 16:40:06
当我只支持一个环境时,我明白你的观点。但是当你有十几个测试环境时,在所有这些服务器上更新JS框架/库的最新版本是一件麻烦事,更容易指向CDN并让别人去做。谢谢。 – 2009-12-07 18:21:50