我正在开发一个页面,我将不得不在无冲突模式下使用Jquery以及side原型js。我已经多次成功地将jquery置于无冲突模式,但这次我仍然收到错误
类型错误: $ 不是函数原型.js:7126:29
这意味着Jquery noconflict仍然没有为prototypeJS发布美元变量。
我试过了
<script src="js/jquery/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
var jQuery=$.noConflict();
</script>
<script src="js/prototype/prototype.js" type="text/javascript"></script>
我得到了同样的错误,然后我去了
<script src="js/jquery/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
$.noConflict();
</script>
<script src="js/prototype/prototype.js" type="text/javascript"></script>
最后是
<script src="js/jquery/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();
</script>
<script src="js/prototype/prototype.js" type="text/javascript"></script>
对于他们中的每一个,我仍然得到相同的错误。
当 Jquery 仍然显示 $ 不是带有原型 js 的函数时,如何解决 Jquery noconflict?
您正在尝试的代码是正确的。我可以看到这里唯一的问题是 由于某种原因,您正在加载的jQyery和原型文件或两个都没有加载。也许路径不正确。尝试使用下面代码片段中给出的 CDN,该代码片段按预期工作。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
var $j=$.noConflict();
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prototype/1.7.3/prototype.js" type="text/javascript"></script>
<div id='mainDiv'>
This is a Div
</div>
<script type="text/javascript">
//prototype js code for selecting Div with id='mainDiv'
console.log($('mainDiv'));
//jQuery document ready function
$j(document).ready(function(){
console.log('jQuery Document ready Function');
});
</script>