【发布时间】:2012-05-14 22:54:57
【问题描述】:
javascript 是否被调用或执行取决于什么?准确地说,我有两个函数都以相同的方式调用:
[self.mapView stringByEvaluatingJavaScriptFromString:
[NSString stringWithFormat:@"setMarkerAtPosition(%f,%f)",
latlong.latitude, latlong.longitude]];
和
[self.mapView stringByEvaluatingJavaScriptFromString:@"test()"];
但是calculateRoute() 会被执行,而test() 不会。怎么会?
function setMarkerAtPosition(lat, long){
var position = new google.maps.LatLng(lat, long);
var marker = new google.maps.Marker({position: position,
map: map,
title:"Hello World!",
animation: google.maps.Animation.DROP});
var content = "Ich bin eine normale Infobox";
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(content);
infowindow.open(map,marker);
reportClickedMarker();
});
}
function test(){
alert(currentPosition.latitude + ', ' + currentPosition.longitude);
}
谢谢
【问题讨论】:
-
您可能需要显示调用这些函数的代码
-
除函数名外都一样
-
好吧,你没听懂我的意思。您需要包含调用这些函数的代码;否则,你的问题的答案是“你的猜测和我的一样好”。也不要将其作为评论包含在内,请使用此处涉及的其余代码实际编辑您的问题。谢谢;)
-
我在任何地方都看不到“functionName”。我希望您发布实际代码而不是虚假示例。如果我遗漏了什么,我很抱歉,但在我看来,调用 calculateRoute 和 test 的实际代码不包括在内。例如,我们如何知道函数实际上被调用了?也许您有一个条件块导致您的代码甚至没有被触发?也许还有其他原因导致它无法被触发,而我们在您的 obj-c 中看不到?您是否尝试过用 test 替换 calculateRoute,以便代码的同一部分调用另一个函数?
-
再次声明,
[self.mapView stringByEvaluatingJavaScriptFromString:@"functionName()"];不是您的实际代码,如果您正在使用它,那么这就解释了为什么它不起作用,因为functionName不是您据称包含的函数你的 JavaScript。显示实际代码。
标签: javascript objective-c ios google-maps-api-3