Jquery在jquery.js库中更改$和Jquery

时间:2015-02-19 15:23:52

标签: javascript jquery

如何重命名$和jQuery?

我创建了小部件,并在第三方网站中使用。

因为我与第三方网站的jQuery发生冲突。 我不知道哪个版本的jquery第三方正在使用,所以我陷入了困境。

现在如果可以重命名,那么请告诉我如何在jquery.js库中执行此操作。

否则我必须在本机java脚本中重写整个脚本(大约3000多行)。这是不可能的,因为我的脚本使用第三方js,如fullcalendar,colorbox,validationengine等,完全依赖于jquery。

<html>
<head>
</head>
<body>
3rd party website
    <script src="jquery-1.5.js"></script>


    // My widget code : Start
    <script src="http://my-domain.com/my-widget.js"></script>

    <div id="my-result"></div>
    // My widget code : End

</body>
</html>

编辑1

<html>
    <head>
        <title>title</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
    </head>
    <body>
        <script src="http://code.jquery.com/jquery.js"></script>
        <script type="text/javascript" src="script.js"></script>

        <div id="my-result"></div>

         <script src="js/jsapi" type="text/javascript"></script>

        <script type="text/javascript">           
            google.load('jquery', '1.5');
        </script>
        <!--<script src="http://code.jquery.com/jquery-migrate-1.2.1.js" type="text/javascript"></script>-->
    </body>


</html>

1 个答案:

答案 0 :(得分:7)

不建议更改jquery文件本身的代码,只需使用no conflict

<script src="jquery.js"></script>
<script>
    var $j = jQuery.noConflict( true );
    // $j will point to your jquery version
    $j('#somediv').show();
</script>

看到最后一次编辑后,你可以用你的代码知道$作为jquery的版本来封闭你的my-widget.js代码:

(function( $ ) {

    // all my-widget.js code 

})($j);