3

我正在使用 JQM 和 AJAX 转换并从 sharethis 加载社交共享按钮。初始加载没有问题:

$( '#recipe' ).live( 'pageinit',function(event){
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = 'http://w.sharethis.com/button/buttons.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    var ss=document.getElementById("social");
    ss.innerHTML="<script type=\"text/javascript\" src=\"http://w.sharethis.com/button/buttons.js\"></script><script type=\"text/javascript\">stLight.options({publisher: \"c06b6443-3837-4409-???????\"});</script><span class='st_pinterest_large' displayText='Pinterest'></span><span class='st_facebook_large' displayText='Facebook'></span><span class='st_twitter_large' displayText='Tweet'></span>";    
});

当我离开此页面并使用本机后退按钮时,社交按钮不再存在。任何想法为什么 JS 没有被保存在页面中?谢谢你的帮助

更新

按照建议尝试了 pageshow - 仍然是同样的问题。这是新的JS

$( '#recipe' ).live( 'pageshow',function(event){
    var ga = document.createElement('script');
    ga.src = 'http://s7.addthis.com/js/300/addthis_widget.js#pubid=ra-???????';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    var addthis_config = {"data_track_addressbar":true};
    var soc=document.getElementById("social");
    soc.innerHTML="<div class=\"addthis_toolbox addthis_default_style addthis_32x32_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><a class=\"addthis_counter addthis_bubble_style\"></a></div>";          
}); 

重现问题 1. url: http: //19thway.com/cck/recipe.php ?id= 2 (您将在左上角看到 ss 小部件) 2. 单击左下角的“定位成分” 3. 单击“返回”按钮左上角 4. 没有 ss 小部件!!!

我不想关闭 AJAX 导航,我尝试缓存页面,但是 url 发生了变化,所以这对我也不起作用。还有其他选择可以让 JS 重新启动吗?谢谢。

另一个更新

这真让我抓狂。如果您在上面的链接上输入应用程序,一切都很好。请试试这个:

  1. 在这里输入:http: //19thway.com/cck/index.html
  2. 向前导航到食谱页面(一切都很好)
  3. 浏览过去的食谱页面,然后使用后退按钮(小部件消失了!!!)

有任何想法吗?

4

0 回答 0