如何在没有 $ 的情况下使用 jquery?
How to use jquery without $?
jquery什么时候像这样,行得通:
if( jQuery('.cmp .input-rangeslider-' + inputName).hasClass('do-not-update') ){
jQuery('.cmp .input-rangeslider-' + inputName).removeClass('do-not-update');
}
但是当我这样写jquery时:
if(jQuery('.cmp .nemovitosti input[name="type"]:checked')){
$(".answer").show();
}
else{
$(".answer").hide();
}
它导致此错误:未捕获的类型错误:$ 不是函数
使用 Wordpress 时,$
变量不引用 jQuery(默认情况下)。要解决此问题,您需要自己在 document.ready 事件处理程序中为其设置别名。
另请注意,您在第二个代码示例中的 if
语句存在缺陷,因为 jQuery 对象始终等于 true
。您需要将 :checked
选择器移动到对 is()
的单独调用,这将 return 一个布尔值:
jQuery($ => {
if ($('.cmp .nemovitosti input[name="type"]').is(':checked')) {
$(".answer").show();
} else {
$(".answer").hide();
}
});
最后,可以通过将 is()
中的布尔值提供给 toggle()
函数来进一步简化此逻辑,这将显示或隐藏目标元素。
jQuery($ => {
$(".answer").toggle($('.cmp .nemovitosti input[name="type"]').is(':checked'));
});
jquery什么时候像这样,行得通:
if( jQuery('.cmp .input-rangeslider-' + inputName).hasClass('do-not-update') ){
jQuery('.cmp .input-rangeslider-' + inputName).removeClass('do-not-update');
}
但是当我这样写jquery时:
if(jQuery('.cmp .nemovitosti input[name="type"]:checked')){
$(".answer").show();
}
else{
$(".answer").hide();
}
它导致此错误:未捕获的类型错误:$ 不是函数
使用 Wordpress 时,$
变量不引用 jQuery(默认情况下)。要解决此问题,您需要自己在 document.ready 事件处理程序中为其设置别名。
另请注意,您在第二个代码示例中的 if
语句存在缺陷,因为 jQuery 对象始终等于 true
。您需要将 :checked
选择器移动到对 is()
的单独调用,这将 return 一个布尔值:
jQuery($ => {
if ($('.cmp .nemovitosti input[name="type"]').is(':checked')) {
$(".answer").show();
} else {
$(".answer").hide();
}
});
最后,可以通过将 is()
中的布尔值提供给 toggle()
函数来进一步简化此逻辑,这将显示或隐藏目标元素。
jQuery($ => {
$(".answer").toggle($('.cmp .nemovitosti input[name="type"]').is(':checked'));
});