我有一个在for循环中调用的函数。
function printResult(name, i) {
$('#list').append("<a href='#' onClick='goto(" + i + ");' class='item'><H1>" + name + "</H1> </a>");
}
a href标记会按需添加,但是当我调用goto函数firebug时说:“未定义goto”
但它是!!
这是功能:
function goto(myPoint){
map.setCenter(new google.maps.LatLng(marker[myPoint-1].position.lat(), marker[myPoint-
1].position.lng()));
markerArr[myPoint-1]['infowindow'].open(map, markerArr[myPoint-1]);
}
我对为什么找不到该功能一无所知。它是否与在附加的href标签中被调用有关?
最佳答案
goto()
是函数的可怕名称,因为在许多编程语言中,它通常用作关键字。
在Javascript中,它不是关键字。但是,它是a reserved word,因为它可能会在该语言的将来版本中使用。仅此一个原因就可能导致JS拒绝您的函数或无法调用它。
但是,即使它不是保留的,也可能被视为潜在的歧义,因此不建议使用。
因此,我的建议是更改函数名称。运气好的话,它可能会神奇地开始工作。