我正在尝试使用JVectorMap创建一个map,它会在用户单击给定的标记后将信息放到#output div中(例如,如果用户单击标记为Alaska的标记,有关阿拉斯加的事实就会在#output div中弹出)。在这里的其他地方,我见过这个代码示例,它输出标签的名称...
onMarkerLabelShow: function(event, label, code) {
$("#output").html("Some information about "+ label.html());
}我试着在这里使用开关...
onMarkerLabelShow: function(event, label, code) {
switch (label) {
case Alaska:
$("#output").html($("#alaska-facts");
[break;]
case North Carolina:
$("#output").html($("#nc-facts");
[break;]
default:
$("#output").html("Please select a job site");
[break;]
}
}当我运行这段代码时,地图不会显示,我可能完全走错了路。有什么帮助吗?
发布于 2012-11-01 09:43:00
有几个问题:
label是一个对象,不会与匹配字符串值的简单case语句匹配。您可能希望针对label.text()"North Carolina",而不是break;不应包装在[]中)(您不想要break数组,您想要换行的North Carolina).html() with jQuery ID "North Carolina"break;的行的结束)
更正示例:
onRegionLabelShow: function(event, label, code) {
switch (label.text()) {
case "Alaska":
$("#output").html($("#alaska-facts"));
break;
case "North Carolina":
$("#output").html($("#nc-facts"));
break;
default:
$("#output").html("Please select a job site");
break;
}
}https://stackoverflow.com/questions/13147380
复制相似问题