0

Google マップと独自の JavaScript を使用する Web サイトがあります。ソーシャル ボタンに addThis JavaScript を使用しています。このサイトは、私の JavaScript と Google の JavaScript がロードされて (on で$(document).ready...) 実行されるまで実際には使用できないので、処理の遅延を最小限に抑えたいと考えています。そのため、それほど重要ではないため、他のすべてが完了するまで AddThis モジュールを延期することを考えていました。

スタックオーバーフローに関する他の質問では、遅延させたいJavaScriptへのリンクをページの下部に配置することを提案しています。$(document).ready...しかし、リンクされたすべてのJavaScriptがどこに配置されていてもロードされるまで起動しないので、これは私には関係ないと考えていますか?

もしそうなら、どうにかして addThis javascript を on の後にロードする必要があり$(document).ready...ますか?

すべてのGoogleマップ画像などがすべて読み込まれるまでaddThisを実行したくないのですが(.ready()はこれを待たないと思います)。このようなことを処理するための推奨される方法はありますか?

参考までに、一般的な addThis の使用法...

<script type="text/javascript">
    var addthis_config = {
        "data_track_addressbar":false,
        "ui_click":true,
        "data_use_cookies": false
    };
</script>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#"></script>

<div class="addthis_toolbox addthis_default_style addthis_32x32_style">
<a class="addthis_button_facebook"></a>
<a class="addthis_button_twitter"></a>
<a class="addthis_button_preferred_1"></a>
<a class="addthis_button_preferred_2"></a>
<a class="addthis_button_compact" title="Share"></a>
</div>
4

3 に答える 3

0

私はこれを思いつきました(より良い方法があれば教えてください)。

<script type="text/javascript">
    var addthis_config = {
        "data_track_addressbar":false,
        "ui_click":true,
        "data_use_cookies": false
    };

    $(window).on("load", function(){
        $('head')
            .append($('<script>')
            .attr('type', 'text/javascript')
            .attr('src', "http://s7.addthis.com/js/250/addthis_widget.js#"));        
    });
</script>

<div class="addthis_toolbox addthis_default_style addthis_32x32_style">
<a class="addthis_button_facebook"></a>
<a class="addthis_button_twitter"></a>
<a class="addthis_button_preferred_1"></a>
<a class="addthis_button_preferred_2"></a>
<a class="addthis_button_compact" title="Share"></a>
</div>
于 2013-05-11T16:28:18.423 に答える
0

誰かがまだ解決策を探している場合に備えて。AddThis は、多くの人がページの遅延に悩まされていることをすでに発表しており、(dom) の準備が整ったときにスクリプトで制御してロードできるいくつかのオプションを提供しています:非同期的に、他の良いオプションはこのように配置されていると思います-これはdomの準備が整うまで実行されません:

<script type="text/javascript">


 /*
    //if you have a pub_id, add it here and uncomment these two lines
    var addthis_config = addthis_config||{};
    addthis_config.pubid = 'YOUR PUBID';
    */
    var addthisScript = document.createElement('script');
    addthisScript.setAttribute('src', 'http://s7.addthis.com/js/300/addthis_widget.js#domready=1')
    document.body.appendChild(addthisScript)
</script>

詳細はこちら

于 2015-01-14T00:08:35.027 に答える