我们有一个嵌入Google Maps API v3的页面,最近(今天?)缩放控件和地图背景控件已经丢失。没有对代码进行任何更改。当我们禁用mootools.js时,控件会返回。 Google Maps API v3中最近发生了哪些与mootools javascript不兼容的内容,这可能会导致控件消失?
答案 0 :(得分:3)
问题是由较旧版本的Mootools引起的。
您可以尝试使用最新版本的mootools吗?
我使用mootools 1.4.5和build ab8ea8824dc3b24b6666867a2c4ed58ebb762cf0并且它不起作用 如果我使用mootools 1.4.5 with build 74e34796f5f76640cdb98853004650aea1499d69,它可以工作。
错误在Function.implement和方法绑定中。
第一次构建:
bind: function(bind, args){
var self = this;
if (args != null) args = Array.from(args);
return function(){
return self.apply(bind, args || arguments);
};
},
第二次构建:
/*<!ES5-bind>*/
bind: function(that){
var self = this,
args = arguments.length > 1 ? Array.slice(arguments, 1) : null,
F = function(){};
var bound = function(){
var context = that, length = arguments.length;
if (this instanceof bound){
F.prototype = self.prototype;
context = new F;
}
var result = (!args && !length)
? self.call(context)
: self.apply(context, args && length ? args.concat(Array.slice(arguments)) : args || arguments);
return context == that ? result : context;
};
return bound;
},
第二个版本对错误有更多保护。
答案 1 :(得分:2)
我认为Mootools打破了Gmaps全球代码的一部分,也许是事件处理程序。
在适用于我的Mootools-core.js之后加载Google Maps API Javascript。
我今天使用Gmaps API V3和Mootools 1.4和Mootools 1.5进行了测试。
(抱歉,我不会说英语:D)
答案 2 :(得分:0)
这种情况在我之前发生过几次,所有的突然控制都很有趣,然后在一天之后自动修复。 在你的情况下,我搞砸了引导而不是mootools。
我觉得这很有帮助 在样式表中添加:
#mapDiv img{ max-width: none; }