Angular 2:如何实现图像映射区域

时间:2017-11-13 10:02:21

标签: javascript angularjs html5 angular area

我正在尝试在Angular 2中实现图像映射区域,作为示例(在Angular JS中) http://plnkr.co/edit/5bfNEQxqPfzZxuBJOSWm?p=preview

我做了什么:

product.component.html

<div class="row“>
  <div id="image_map"> 
    <map name="map_example"> 
      <area shape="poly" coords="0.847,0.885, 1.133,0.669, 1.451,1.085, 1.176,1.225" ng-click="selectPart(546)"> 
      <area shape="poly" coords="1.171,0.604, 1.548,0.416, 1.813,0.988, 1.511,1.052" ng-click="selectPart(547)"> 
    </map> 
    <img src="../../../assets/images/map_product_1_part.png" alt="image map example" width=557 height=441 usemap="#map_example"> 
  </div> 
</div>

product.component.ts

…
selectPart(part: number)
{
     console.log("click on" + part);
}

结果:未检测到图像区域或可单击。

我知道Angular 2中的代码和逻辑应该有所不同,但我对此很新,任何建议都非常感激。

1 个答案:

答案 0 :(得分:2)

angular2中没有protocol Persisting { func persist() } extension Persisting { func persist() { print("persisting") } } protocol Service { func get() } extension Service where Self: Persisting { func get() { persist() } } extension Service { func get() { print("Not able to persist") } } 属性。

使用ng-click(click)代替

<强> Plunker Example