更多与onRegionLabelShow一起使用的选项:与jVectormap一起使用的函数

时间:2013-11-16 00:39:40

标签: jquery json jvectormap

我到处寻找答案,但由于我对jQuery的了解仍然几乎不存在,我不确定我是否在寻找正确的问题。我希望有人能给我一些帮助。

我正在使用jvectormap创建地图并在http://www.roosteromg.com/sandbox/map2处构建地图。我成功地根据政党创建了不同颜色的每个翻转状态,但我需要能够根据正在翻转的状态向Show标签添加几行文本。

例如:如果翻转说,宾夕法尼亚州,它当前使用onRegionLabelShow: function(event, label, code){ label.html( ''+label.html()显示州名,但我需要在州名后添加两行纯文本。

如果像我需要的那样工作,状态,当翻过来时会看起来像:

宾夕法尼亚
参议员John Doe(右) - 投票赞成 Sen Jane Doe(D) - 投票否

提前感谢您的帮助。

查尔斯史密斯

1 个答案:

答案 0 :(得分:1)

基本上您需要的是一个定义,其中包含以'stateCode': 'text'形式显示的每个州的文本。

var labels = {
    'US-AL': 'Sen. John Doe (R) - Voted Yes<br/>Sen Jane Doe (D) - Voted No',
    'US-AK': 'Some other text, you can make use of html tags'
};

为了能够显示附加到状态的自定义文本,您需要稍微修改onRegionLabelShow功能。

onRegionLabelShow: function(event, label, code){
    if (!labels.hasOwnProperty(code)) {
        // no text found, return standard state name
        return true;
    }

    // construct label for state with extra text
    label.html(
        '<strong>' + label.html() + '</strong><br/>' + labels[code]
    );
}