2

AddThis ウィジェットを ember.js アプリに追加しようとしています。addthis.com から直接取得した基本的なコードを使用しています。

<!-- AddThis Button BEGIN -->
<div class="addthis_toolbox addthis_default_style addthis_32x32_style">
<a class="addthis_button_facebook"></a>
<a class="addthis_button_twitter"></a>
<a class="addthis_button_google_plusone_share"></a>
<a class="addthis_button_linkedin"></a>
<a class="addthis_button_pinterest_share"></a>
</div>
<script type="text/javascript" src="http://s7.addthis.com/js/300/addthis_widget.js#pubid=ra-51ddaec37ede7c28"></script>
<!-- AddThis Button END -->

...そして、このエラーが発生します:「Uncaught TypeError: 未定義のプロパティ 'call' を読み取れません」 2 行目のhttp://ct1.addthis.com/static/r07/core085.jsから。

サポートに問い合わせましたが、まだうまくいきません。これを引き起こしている原因についてのアイデアは役に立ちます! 前もって感謝します!

編集:現在、アプリのテンプレートに上記のコードがあります。

4

1 に答える 1

2

私はaddthisウィジェットを詳しく調べましたが、スクリプトからロードされたコードは、タグの作成などの厄介なことを行い、テンプレート内にいると、ウィジェットスクリプトが行う DOM 操作と連携して動作しません。addthisの背後にあるチームが、ウィジェットをより統合しやすいものにするために何かをしない限り。scriptiframehandlebarsember.js

だから私はいくつかの代替共有ウィジェットを見てきました.sharethisは基本的にaddthisと同じですが、大きな違いが1つあります-私は簡単に作業できましたember.js

基本的に私が行ったことは、ウィジェットのビューを作成することであり、ウィジェット内でdidInsertElement初期化が呼び出されます。

App.WidgetView = Ember.View.extend({
  templateName: 'widget',
  didInsertElement: function() {
    stLight.options({publisher: "ur-733dae74-7b06-4fef-3f54-f60dce5ce03e", doNotHash: false, doNotCopy: false, hashAddressBar: false});
  }
});

次に、別のテンプレートで、次のようにするだけでウィジェットを簡単に使用できます。

{{view App.WidgetView}}

テンプレートは次のwidgetようになります。

<script type="text/x-handlebars" data-template-name="widget">
  <span class='st_sharethis_large' displayText='ShareThis'></span>
  <span class='st_facebook_large' displayText='Facebook'></span>
  <span class='st_twitter_large' displayText='Tweet'></span>
  <span class='st_linkedin_large' displayText='LinkedIn'></span>
  <span class='st_pinterest_large' displayText='Pinterest'></span>
  <span class='st_email_large' displayText='Email'></span> 
</script>

実際のデモについては、こちらをご覧ください。

免責事項:私の答えはあなたの問題を直接解決するものではありませんが、別の共有ウィジェットを使用して別のアプローチを取るのに役立つかもしれませember.jsん.

それが役に立てば幸い。

于 2013-07-11T00:05:21.170 に答える