Facebook分享按钮href将无法动态更改

时间:2016-04-14 11:00:29

标签: javascript angularjs facebook facebook-javascript-sdk

用户可以更改HTML表单,然后我使用URL参数进行双向绑定。

我可以检查动态更改的data-href。

但是,当我点击分享按钮时,共享页面仍然是原始网址。

它由undefined

返回FB.XFBML.parse(document.getElementById('FB_BTN'));

但是,我可以真正获得document.getElementById('FB_BTN')

的元素

我怎么能用angular?改变共享页面url params?

HTML

    <div id="FB_BTN" class="fb-share-button" data-href="http://0.0.0.0:3003/user/quick_search/index#/?depart_date_range=2016%2F06%2F13%20-%202016%2F06%2F16&amp;return_date_range=2016%2F06%2F13%20-%202016%2F06%2F16" data-layout="icon_link" data-mobile-iframe="true"></div>

的Javascript

    (function(d, s, id){
       var js, fjs = d.getElementsByTagName(s)[0];
       if (d.getElementById(id)) return;
       js = d.createElement(s); js.id = id;
       js.src = "//connect.facebook.net/es_LA/sdk.js";
       fjs.parentNode.insertBefore(js, fjs);
     }(document, 'script', 'facebook-jssdk'));

    app.run(function ($rootScope) {
        $rootScope.$on('$locationChangeSuccess', function(event, absNewUrl, absOldUrl) {
          if(typeof(FB) !== 'undefined' && angular.element('#FB_BTN')){
            var share_btn_ele = angular.element('#FB_BTN')
            share_btn_ele.attr('data-href', absNewUrl)
            FB.XFBML.parse(document.getElementById('FB_BTN'));
          }
        });
    });

0 个答案:

没有答案