嗨我知道以前曾经问过这个问题,但这里的答案似乎对我没什么帮助。
我有这个JS块:
$(document).ready(function() {
$('.play-icon-hover').hover(function() {
$('.cms-model-banner-overlay').addClass('.cms-model-banner-overlay-active');
}, function() {
$('.cms-model-banner-overlay').removeClass('.cms-model-banner-overlay-active');
});
});
我似乎得到了这个错误,但我不明白为什么?
Uncaught TypeError: $(...).ready is not a function
由于
答案 0 :(得分:28)
您正在使用Prototype.js
以及jQuery.js
。如果您想使用jQuery,最好将代码封装在IIFE中,如下所示:
(function ($) {
// jQuery code using $
})(jQuery);
因此,您的问题的解决方案是将$
更改为jQuery:
jQuery(document).ready(function() {
jQuery('.play-icon-hover').hover(function() {
jQuery('.cms-model-banner-overlay').addClass('.cms-model-banner-overlay-active');
}, function() {
jQuery('.cms-model-banner-overlay').removeClass('.cms-model-banner-overlay-active');
});
});
或者,使用IIFE:
(function ($) {
$(document).ready(function() {
$('.play-icon-hover').hover(function() {
$('.cms-model-banner-overlay').addClass('.cms-model-banner-overlay-active');
}, function() {
$('.cms-model-banner-overlay').removeClass('.cms-model-banner-overlay-active');
});
});
})(jQuery);