如何重命名$和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>
<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>
答案 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);