Angular JS和addthis eventhandlers

时间:2013-05-01 15:24:58

标签: angularjs addthis

我在大型项目中第一次使用Angular,其中一个要求是我们使用AddThis进行文章的社交共享。但除了 AddThis 共享之外,我们还希望跟踪Google Analytics中的共享事件。

所以我想要做的是添加 AddThis

<div class="addthis_toolbox addthis_16x16_style">
  <a class="addthis_button_preferred_1"></a>
  <a class="addthis_button_preferred_2"></a>
  <a class="addthis_button_preferred_3"></a>
  <a class="addthis_button_preferred_4"></a>
  <a class="addthis_button_compact"></a>
</div>
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=XXXXX"></script>

并在控制器中添加一个事件处理程序,如其文档中所述 http://support.addthis.com/customer/portal/articles/381263-addthis-client-api-#configuration-sharing

addthis.addEventListener('addthis.menu.open', eventHandler);
addthis.addEventListener('addthis.menu.close', eventHandler);
addthis.addEventListener('addthis.menu.share', eventHandler);

问题是,我似乎无法在控制器的$ scope中获得对addthis对象的引用。有没有人知道如何通过指令或其他技巧来完成这个来完成document.ready并获得对addthis对象的引用?

1 个答案:

答案 0 :(得分:0)

addthiswindow的属性,必须在任何范围内都可见,但我想type的{​​{1}}参数不会在addthis_widget.js中进行评估

你试过这个吗?

addEventListener

每次重新加载小部件时都应该应用事件。

如果没有帮助,你可以把它包装成像here这样的指令。尝试在指令中添加侦听器。