如何使用javascript / jquery添加到页面链接(url)的OnClick函数

时间:2011-09-25 06:27:44

标签: javascript jquery onclick

好的我正在使用这里找到的精彩地图插件:

http://jvectormap.owl-hollow.net/#maps

我是一个菜鸟......无法弄清楚如何实现文档中“参考”部分中提到的参数,该文档说明您可以使用“onRegionClick”。

任何人都可以告诉我如何实现这一点,以便当我点击一个区域(美国地图上的状态)时,它会转到一个URL吗?

如果这有帮助,我当前的工作示例使用我想要的参数在页面上显示我想要的信息,但仅在现有页面上的div(div称为#location)中显示。我希望它能找到一个网址。

<script>
$(function(){
    $('#main').vectorMap({
        map: 'usa_en',
        color: '#aaaaaa',
        hoverColor: false,
        hoverOpacity: 0.5,
        colors: {pa:'#F00, ny:'#F00, },
        backgroundColor: 'false',
        onRegionClick: showmyinfo       
    });
});

function showmyinfo(event,label){
    switch (label)
    {
        case 'pa':
            $('#location').html('<h3>PA Locations:</h3><ul><li>Location 1</li><li>123 This Street</li><li>Havertown, PA 19083</li></ul>');
            break;
        case 'ny':
            $('#location').html('<h3>NY Locations:</h3><ul><li>Location 1</li><li>123 This Street</li><li>Brooklyn, NY 11249</li></ul>');
            break;
    }
}
</script>

任何帮助非常感谢

3 个答案:

答案 0 :(得分:2)

也许这样做会有效:

$(function(){
    $('#main').vectorMap({
        ..
        onRegionClick: function (event, code) {
            window.location = 'page.php?code=' + code;
        }
    });
});

答案 1 :(得分:2)

我发现这对我有用。

onRegionClick: function(event, code){
                        if (code == "US-AZ") {window.location = '/url1'}
                        if (code == "US-TX") {window.location = '/url2'}
                        if (code == "US-CA") {window.location = '/url3'}
                        if (code == "US-NV") {window.location = '/url4'}
                        if (code == "US-LA") {window.location = '/url5'}
},

答案 2 :(得分:0)

我刚刚遇到了同样的问题。但我找到了一个解决方案:

$(document).ready (function() {
$('#map').vectorMap( {
    map: 'germany_en',
    backgroundColor: 'red',
    hoverColor: 'black',
    onRegionClick: function(event, code) {
        if (code === 'th') {
            window.location = 'index.php?id=2'
        }
        else if (code === 'mv') {
            window.location = 'index.php?id=3'
        }
        else if (code === 'rp') {
            window.location = 'index.php?id=4'
        }
    }
});
});

现在您可以为每个区域创建一个单独的URL(由其代码标识)。

形式“index.php?id = 2”来自TYPO3,所以你应该根据你正在使用的内容进行调整......

问候