Javascript 如何强制加载博客第三方主题中的评论
我有一个博客,其中安装了第三方主题。 我的博客是blogger博客 我没有改变主题的计划,因为这个想法和它是如何建立的 匹配我的网站内容。Javascript 如何强制加载博客第三方主题中的评论,javascript,jquery,blogger,disqus,Javascript,Jquery,Blogger,Disqus,我有一个博客,其中安装了第三方主题。 我的博客是blogger博客 我没有改变主题的计划,因为这个想法和它是如何建立的 匹配我的网站内容。 我想问的是,有时候,disqs评论根本不加载。即使我刷新页面,它也不会加载 我想要一个代码,在检查它是否未加载后强制它重新加载。这种情况不仅发生在Disqs上,还发生在AddThisShare按钮上。我在这两个脚本中都添加了async='async',让它加载得稍微晚一点。虽然它增加了加载的概率,但仍然没有改变它有时不加载的事实。当有时出现不加载的情况时,无
我想问的是,有时候,disqs评论根本不加载。即使我刷新页面,它也不会加载 我想要一个代码,在检查它是否未加载后强制它重新加载。这种情况不仅发生在Disqs上,还发生在AddThisShare按钮上。我在这两个脚本中都添加了
async='async'
,让它加载得稍微晚一点。虽然它增加了加载的概率,但仍然没有改变它有时不加载的事实。当有时出现不加载的情况时,无论它是在刷新后加载,还是在刷新后从未加载(除非我复制链接并在浏览器中打开新选项卡或窗口并再次打开页面)
blogger主题也安装了bootstrapper。
因此,我不得不用
顺便说一下,
id='discus\u线程'
是我随机放置的,但它仍然增加了加载的可能性
以下是小部件Blog1
评论选取器
<b:includable id='comment_picker' var='post'>
<div class='col-md-12 col-sm-12 col-xs-12' id='disqus_thread'>
<b:if cond='data:post.commentSource == 1'>
<b:include data='post' name='iframe_comments'/>
<b:elseif cond='data:post.showThreadedComments'/>
<b:include data='post' name='threaded_comments'/>
<b:else/>
<b:include data='post' name='comments'/>
</b:if>
</div>
</b:includable>
论文
<b:widget id='HTML1' locked='false' title='Disqus for site' type='HTML' version='1'>
<b:widget-settings>
<b:widget-setting name='content'><![CDATA[<!-- Disqus Widget -->]]>
</b:widget-setting>
</b:widget-settings>
<b:includable id='main'>
<script asyn='async' type='text/javascript'>
var disqus_shortname = 'site';
var disqus_blogger_current_url = "<data:blog.canonicalUrl/>";
if (!disqus_blogger_current_url.length) {
disqus_blogger_current_url = "<data:blog.url/>";
}
var disqus_blogger_homepage_url = "<data:blog.homepageUrl/>";
var disqus_blogger_canonical_homepage_url = "
<data:blog.canonicalHomepageUrl/>";
</script>
<b:if cond='data:blog.pageType == "item"'>
<style type='text/css'>
#comments {display:none;}
</style>
<script type='text/javascript'>
(function() {
var bloggerjs = document.createElement('script');
bloggerjs.type = 'text/javascript';
bloggerjs.async = true;
bloggerjs.src = '//' + disqus_shortname + '.disqus.com/blogger_item.js';
(document.getElementsByTagName('head')[0] ||
document.getElementsByTagName('body')[0]).appendChild(bloggerjs);
})();
</script>
</b:if>
<style type='text/css'>
.post-comment-link { visibility: hidden; }
</style>
<script type='text/javascript'>
(function() {
var bloggerjs = document.createElement('script');
bloggerjs.type = 'text/javascript';
bloggerjs.async = true;
bloggerjs.src = '//' + disqus_shortname + '.disqus.com/blogger_index.js';
(document.getElementsByTagName('head')[0] ||document.getElementsByTagName('body')[0]).appendChild(bloggerjs);
})();
</script>
</b:includable>
]]>
var Discus_shortname=';场地';;
var discuss_blogger_current_url=“”;
如果(!discus\u blogger\u current\u url.length){
discuss_blogger_current_url=“”;
}
var discuss_blogger_homepage_url=“”;
var Discuss_blogger_canonical_homepage_url=”
";
#注释{显示:无;}
(功能(){
var bloggerjs=document.createElement(';script';);
bloggerjs.type=';text/javascript';;
bloggerjs.async=true;
bloggerjs.src=';/';+discus#u shortname+';.discus.com/blogger#u item.js';;
(document.getElementsByTagName(';head';)[0]|
document.getElementsByTagName(';body';)[0]).appendChild(bloggerjs);
})();
.post注释链接{可见性:隐藏;}
(功能(){
var bloggerjs=document.createElement(';script';);
bloggerjs.type=';text/javascript';;
bloggerjs.async=true;
bloggerjs.src=';/';+discus#u shortname+';.discus.com/blogger#u index.js';;
(document.getElementsByTagName(';head';)[0]| document.getElementsByTagName(';body';)[0])。appendChild(bloggerjs);
})();
链接到我的完整主题:
您可能需要一些时间,但请尝试解决它。Discus小部件必须位于
Blog1
小部件之后,才能检测带有id='comments'
的div,因为您的主题没有在版面页面中显示Blog1小部件,您可以剪切Discus小部件并直接粘贴在..
页面中的输出是什么开发者控制台,当不加载文件时?很好!谢谢。我会考虑几天,如果还有问题,我会在这里报告。顺便说一句,我想问一下,尽管我不会实施它。如何在博客布局中显示或不显示小部件?比如,开发这个主题的人是如何隐藏Blog1小部件的,而Blog1小部件在布局中是非常重要的。还有一件事我想知道,如何扩大我博客的范围。我想把左边和右边的空间完全盖起来。我试图编辑一些.container
,但没有得到任何有利的结果。要扩展容器区域,请使用id。将此代码添加到CSS#wrapper{width:100%;}
而Blog1小部件不会出现在您的布局中,因为其部分main
在主页中被条件…
禁用,除非您更改了主题结构,否则无法在此处更改它。