简体   繁体   English

如何有效使用jQuery和JavaScript?

[英]How to use jquery and javascript efficiently?

I am using jquery and its related plugins in my site. 我在我的网站上使用jquery及其相关插件。

Since i use more js. 由于我使用更多的js。 for visiting each page in my site. 用于访问我网站中的每个页面。 all the js loads so site loading time increases. 所有js加载,因此网站加载时间增加。

How to use js libraries efficiently without loading js for each page visit. 如何有效地使用js库,而无需为每次页面访问加载js。

UPDATE: 更新:

I am using 我在用

        <!-- JQUERY-->
        <script src="{$TEMPLATE_FACK}/js/jquery.js" type="text/javascript"></script>
        <script type="text/javascript" language="javascript">
        $.noConflict();
        </script>
        <script src="{$TEMPLATE_FACK}/js/global.js" type="text/javascript"></script>

        <!-- JQUERY.VALIDATE SCRIPT -->
        <script src="{$TEMPLATE_FACK}/js/jquery.validate.js" type="text/javascript"></script>

        <!--JS VALIDATION SCRIPTS -->
        <script type="text/javascript" language="javascript" src="{$TEMPLATE_FACK}/js/scriptaculous/lib/prototype.js"></script>
        <script type="text/javascript" language="javascript" src="{$TEMPLATE_FACK}/js/scriptaculous/src/scriptaculous.js"></script>
        <script type="text/javascript" language="javascript" src="{$TEMPLATE_FACK}/js/jsvalidate.js"></script>

        <!--jQuery URL Script-->
        <script type="text/javascript" language="javascript" src="{$TEMPLATE_FACK}/js/jquery.url.js"></script>


        <!-- TINYMCE SCRIPTS -->
        <script type="text/javascript" src="{$TEMPLATE_FACK}/tinymce/jquery.tinymce.js"></script>
        <script src="{$TEMPLATE_FACK}/tinymce/tiny_mce_src.js" type="text/javascript"></script>
        <script src="{$TEMPLATE_FACK}/js/quicktags.js" type="text/javascript"></script>

        <!-- WORD COUNT -->
        <script src="{$TEMPLATE_FACK}/js/jquery.wordcount.js" type="text/javascript"></script>

        <!-- Thick box scripts -->
        <script src="{$TEMPLATE_FACK}/js/thickbox.js" type="text/javascript"></script>


<!--JS FOR GRAPH (Highcharts Refer: http://highcharts.com/ref/#plotOptions-pie-point-events)-->
        <script type="text/javascript" src="{$TEMPLATE_FACK}/js/graph/highcharts.js"></script>

        <!-- 1a) Optional: add a theme file -->
        <!--
            <script type="text/javascript" src="{$TEMPLATE_FACK}/js/graph/themes/gray.js"></script>
        -->

        <!-- 1b) Optional: the exporting module -->
        <!--<script type="text/javascript" src="{$TEMPLATE_FACK}/js/graph/modules/exporting.js"></script>-->


        <!--JS FOR Tag adding in Faq add1.html - added by Mogan Dec 02, 2010-->
        <script src="{$TEMPLATE_FACK}/js/create_html.js" type="text/javascript"></script>

    <!--FANCY BOX -->
    <script type="text/javascript" src="{$TEMPLATE_FACK}/js/fancybox/jquery.mousewheel-3.0.4.pack.js"></script>
    <script type="text/javascript" src="{$TEMPLATE_FACK}/js/fancybox/jquery.fancybox-1.3.2.js"></script>

This much of js i am using in header section. 我在标头部分中使用了大量的js。 once i am visiting each page all these loads again and again 一旦我访问每个页面,所有这些负载一次又一次

The user doesn't have to load it each time, just be sure to set your cache headers correctly so the user caches the JavaScript files that are reused. 用户不必每次都加载它,只需确保正确设置缓存头即可,以便用户缓存可重复使用的JavaScript文件。 For libraries specifically (since this is tagged jQuery), look at using a CDN - which will also have the cache headers I mention, as well as parallelizing the download since it's not on your own domain. 对于特定的库(因为它被标记为jQuery), 请看使用CDN-它也将具有我提到的缓存头,以及并行下载,因为它不在您自己的域中。

此外,您可以将内容交付网络 (CDN)用于jQuery等库。Google提供了很多

除了上一个答案外,您还应该将所有javascript文件一起缩小,可以选择使用gzip压缩。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM