我们在 Magento 商店中使用 PowerReviews 作为对标准 Magento 评论系统的替代。我们已经为类别、产品和评论页面设置了它,并且已经运行了一段时间。
最近我添加了一个模块,它为类别页面上的过滤导航带来了 AJAX 重新加载功能。即我选择“红色”作为过滤器,类别页面会刷新而无需重新加载适当的产品。当我关闭 Power Review 时,这可以正常工作。
当 Power Review 开启时,AJAX 开始加载,但随后页面变为白色,仅显示 PowerReviews<div>
标签。当我查看 PowerReviews 代码时,我想我可以看到原因:
<script type="text/javascript">
POWERREVIEWS.display.snippet(document, {
pr_page_id : '49DAF4',
pr_write_review : '/review/product/list/id/1907/category/111/#review-form',
pr_read_review : txt, pr_snippet_min_reviews : 1});
</script>
由于POWERREVIEWS.display.snippet
正在调用“文档”,我认为正在发生的是 AJAX 负载正在发生,被写入“文档”,然后 PowerReviews 正在发生并且也被写入“文档”。由于这是最后发生的,因此它会劫持页面,而不是像在正常加载时那样正确放置。
如果我将“文档”更改为类似的内容document.getelementbyid('PWR')
并添加一个<div id="PWR">
片段将不会显示在页面上。有没有办法可以将输出定位POWERREVIEWS.display.snippet
到“文档”以外的内容,这样两个脚本就不会相互干扰?