我如何使用'window.location.href'与内容区div,仍然为Disqus创建规范的URL变量?

时间:2016-02-20 15:05:32

标签: javascript disqus

我使用以下脚本将内容插入div区域......

<script type="text/javascript">
    $(document).ready(function() {
       $('div#contentWindow a').click(function(e) {
           e.preventDefault();
           var url = $(this).attr('href');
           $('#contentarea').load(url);
       });
    });
</script>

div区域中显示的内容每个都有自己的文件,因此它是自己的URL。内容通过一系列菜单按钮加载,每个菜单按钮将不同的页面文件加载到div区域。

每个页面文件都包含基本的Disqus评论嵌入代码。 Disqus要求每个页面文件都有一个唯一的规范URL,以防止在多个页面中重复注释。所以,我使用了Disqus推荐的内容:

this.page.url = window.location.href; // Replace PAGE_URL with your page's canonical URL variable

但是......因为我正在将不同的规范页面加载到页面上的相同div区域,并且父URL​​永远不会更改(因为window.location.href,我假设),注释正在重复。

我需要Disqus来识别正在加载到div区域的文件的规范URL,并识别每个页面的唯一URL,以防止评论重复,我无法弄明白。

以下是我正在进行的项目的演示。请注意,测试注释在每个“通道”中重复。

http://locallava.com/alpha-ac/

以下是Disqus脚本的当前安装...

    var disqus_config = function () {
    this.page.url = **window.location.href**; // Replace PAGE_URL with your page's canonical URL variable
    this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
    };

    (function() { // DON'T EDIT BELOW THIS LINE
    var d = document, s = d.createElement('script');

    s.src = '//local-lava.disqus.com/embed.js';

    s.setAttribute('data-timestamp', +new Date());
    (d.head || d.body).appendChild(s);
    })();

我该如何解决这个问题?谢谢大家。

0 个答案:

没有答案