当我点击以下代码时出现此错误:
onclick="tester.removeit(this);"
我得到错误:
TypeError: $(...).parent is not a function
函数如下:
removeit: function(ele) {
$(ele).parent('div').fadeOut();
console.log(this);
},
我该如何解决这个问题?
最佳答案
听起来像是库冲突,您在包含 jQuery 之后包含 PrototypeJS 或 MooTools。
当您这样做时,只有一个库可以使用 $
作为其主要标识符。您可以通过 noConflict
告诉 jQuery“释放”$
:
<script src="jquery.js"></script>
<script>jQuery.noConflict();</script>
<script src="prototypejs.js"></script>
然后在要使用 jQuery 的代码中,使用 jQuery
而不是 $
:
// ...
removeit: function(ele) {
jQuery(ele).parent('div').fadeOut();
console.log(this);
},
// ...
或者使用 jQuery 将所有代码包装在接受 $
作为参数的 IIFE 中:
(function($) {
// ...
removeit: function(ele) {
$(ele).parent('div').fadeOut();
console.log(this);
},
// ...
})(jQuery);
关于Javascript TypeError : $(. ..).parent 不是一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37025272/