0

图片地图是关于公寓单位平面图的。

当需求发生变化时,一切都正常。

对于某些区域,altImage:'images/unit.png'默认使用。

新要求:

  • 当单位仍然可用时仅显示 altImage

如何实现上述新要求?我已经尝试了一些硬编码的测试,varaltImage没有显示. 请在下面查看我的代码:

onClick: function (e) {
            var unitStatus="Available";


            $('#selections').html(xref[e.key]);            

            if (unitStatus == 'Available') {                    

                 $('img').mapster('set_options', { 
                   areas: [{
                      key: "Unit1",                    
                      altImage:'images/unit.png',
                      altImageOpacity: 1,
                      altImageFill: true
                    }]
                });
            }
        },

注意: 我使用上面的 onClick 函数只是为了检查我的 js 是否正确执行。这应该在单位*可用*时动态触发。

相关问题: * 之前(1 年前)我试图找到方法在使用 css 的区域上制作一些图像以使其更简单,但我发现使用 image mapster 很难完成但仍然使用它,因为我发现它非常轻量级比使用闪光灯。

这一次,这可能吗?或者有什么方法可以处理这种类型的叠加图像设置?这只是我的次要问题。

4

2 回答 2

0

我在使用“set_options”和“rebind”方法时遇到问题;即使在如上所述的离散调用之后。

此处描述的技术https://github.com/jamietre/ImageMapster/issues/163非常适合通过 JS 对区域渲染选项进行持续操作。

于 2014-09-10T19:04:48.613 回答
0

在 'set_options' 之后(它只更改选项,但不会立即生效)所以调用 'rebind' 来应用新选项。它可能是这样的:

$("img).mapster('rebind', $("img").mapster('get_options')); //get_options 将获取活动选项

查看文档以获取更多详细信息


重新绑定:使用新选项重新绑定 ImageMapster

$('img').mapster('rebind',options); --- options: object一个包含 ImageMapster 选项的 JavaScript 对象

此方法类似于 set_options,其目的是更改现有绑定地图的选项。但是,与 set_options 不同,重新绑定会立即将所有新选项应用于现有地图。这意味着渲染选项将更改已选择要使用新选项渲染的区域。如果您传递特定区域的选项,这些也将被应用,例如,您可以通过在特定区域选项中传递 selected: true 来选择新区域。

相比之下,set_options 只会更改选项,而不会将它们应用于任何现有数据。使用 set_options 时,新选项仅适用于未来的操作。

于 2013-11-04T15:43:29.787 回答