我是使用jquery的新手。我需要在代码库中使用第三方发送的jquery js文件。不幸的是,它与已经使用的lib冲突。我试图使用noConflict代码,但js文件中的函数不能识别相同。有人可以帮我在第三方提供的js文件中使用noConflict。以下是示例:
<script language="javascript" src="jquery-1.10.1.min.js"></script>
<script language="javascript" src="thirdparty.class.js"></script> //this is third party js that uses jquery as well
<script language="javascript">
$(document).ready(function() {
var test = new Test({
baseUrl: 'http://example.com',
interval: 15000,
testId: 8,
});
});
</script>
below is the test.class.js sample file
function Test(parameters)
{
if (parameters == undefined)
{
console.log("parameters must be defined");
return;
}
if (parameters.baseUrl == undefined)
{
console.log("base url must be defined");
return;
}
//complete code is not posted
}
无论如何我可以避免在我的代码和第三方js中使用jquery“$”吗?
感谢任何帮助。 TIA
答案 0 :(得分:0)
尝试以下代码,
jQuery(function($) {
$(document).ready(function() {
var test = new Test({
baseUrl: 'http://example.com',
interval: 15000,
testId: 8,
});
});
});
并且您也可以始终使用jQuery
代替$
答案 1 :(得分:0)
使用noConflict()方法为jQuery变量指定新名称:
示例
var test=$.noConflict();
test(document).ready(function() {
var test = new Test({
baseUrl: 'http://example.com',
interval: 15000,
testId: 8,
});
});
如果您有一块使用$快捷方式的jQuery代码,并且您不想全部更改它,则可以将$ sign作为参数传递给ready方法。这允许你在这个函数中使用$访问jQuery - 在它之外,你将不得不使用&#34; jQuery&#34;:
$.noConflict();
jQuery(document).ready(function($)
{
var test = new Test({
baseUrl: 'http://example.com',
interval: 15000,
testId: 8,
});
});