Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌加一键速度。鼠标盖上的负载_Javascript_Jquery_Html_Seo_Google Plus One - Fatal编程技术网

Javascript 谷歌加一键速度。鼠标盖上的负载

Javascript 谷歌加一键速度。鼠标盖上的负载,javascript,jquery,html,seo,google-plus-one,Javascript,Jquery,Html,Seo,Google Plus One,我想听听你对我的问题和解决方案的看法 谷歌加上一个按钮(和任何其他社交小部件) 我们有一个高流量的网站,运行速度快,平稳(在1秒的加载时间内)。 当尝试实现google plus按钮时,我们看到加载时间变得荒谬 谷歌到处都在吹嘘加载时间,但他们仍然制作了一个缓慢的小部件 我们需要社交小部件,但加载速度对我们的用户和SEO至关重要 我想在网站加载后再加载谷歌按钮,这样用户就不会注意到任何速度差异,但仍然有能力加上废话我们 我想听听这种方法的缺点,或者甚至是更好的解决方案 使用主体上的mouseov

我想听听你对我的问题和解决方案的看法 谷歌加上一个按钮(和任何其他社交小部件)

我们有一个高流量的网站,运行速度快,平稳(在1秒的加载时间内)。 当尝试实现google plus按钮时,我们看到加载时间变得荒谬

谷歌到处都在吹嘘加载时间,但他们仍然制作了一个缓慢的小部件

我们需要社交小部件,但加载速度对我们的用户和SEO至关重要

我想在网站加载后再加载谷歌按钮,这样用户就不会注意到任何速度差异,但仍然有能力加上废话我们

我想听听这种方法的缺点,或者甚至是更好的解决方案

使用主体上的mouseover事件加载社交小部件。 这是可行的,但我不确定这是否可以接受

显示与按钮实现前相同的速度

使用jquery:

    <div id="testcase"></div>

        <script type="text/javascript">

        $(document).ready(function() {
            $('body').mouseover(function() {

                $('body').unbind();
// google html
                $('#testcase').html('<g:plusone size="medium" annotation="inline"></g:plusone>');
    // Google code 
                var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
                po.src = 'https://apis.google.com/js/plusone.js';
                var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
            });
        });
        </script>

$(文档).ready(函数(){
$('body').mouseover(函数(){
$('body').unbind();
//谷歌html
$('#testcase').html('');
//谷歌代码
var po=document.createElement('script');po.type='text/javascript';po.async=true;
po.src=https://apis.google.com/js/plusone.js';
var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(po,s);
});
});

请告诉我您的想法,或者我是否可以改进此想法。

也经历过同样的问题,并做过类似的事情:

function loadPlusOne() {
  $.getScript("https://apis.google.com/js/plusone.js", function () {
    gapi.plusone.render ("plusdiv", {"size": "medium", "count": "true", "expandTo": "top", "href": "http://mysite.com"});
  });
}

函数在加载窗口后几毫秒内运行。

除了在加载时执行此操作外,还有一种轻微的替代方法-您可以在容器的悬停事件中执行此操作。好的一面是它的加载速度不会太慢,你可以有自己设计的按钮来适应页面的设计。它也不会为那些不关心它们的人加载。它甚至可以给你额外的分析信息。不利的一面是,从悬停到加载,您仍然有相同的加载时间。人们可能会担心,在鼠标悬停后加载这些文件所需的时间足以让它们停止点击


Techcrunch在他们的主页上也做了类似的事情,尽管他们是在整个新闻项目的容器上做的。请注意,他们的网站速度太慢了。

为什么不使用onload?我不认为你能确定onmouseover在所有浏览器上都是一样的。我同意widget膨胀的说法,我设法让mint的网站达到98&98(PageSpeed/YSlow)三个HTTP请求-一个按钮将它吹到13个HTTP请求和90分以下的分数+额外的一秒或两秒的加载时间。我们在hover上加载社交媒体内容:你能解释一下吗,我怎么能在我的html页面上使用它?@NullPointer-抱歉,我想这很明显,类似这样->非常感谢,它支持language属性吗?它支持plus one API支持的任何东西吗?