Javascript .切换不是一个函数
在我的网站上我有很多按钮。当页面加载时,我需要单击第一个按钮 我尝试获取第一个按钮,然后使用函数.toggle('click') 变量$btn=$('.btn Personalizer tamanho')[0]; 如果($btn!=未定义)$btn.toggle('click')Javascript .切换不是一个函数,javascript,jquery,Javascript,Jquery,在我的网站上我有很多按钮。当页面加载时,我需要单击第一个按钮 我尝试获取第一个按钮,然后使用函数.toggle('click') 变量$btn=$('.btn Personalizer tamanho')[0]; 如果($btn!=未定义)$btn.toggle('click') 控制台显示。toggle它不是一个函数。0]从jQuery集合返回一个DOM元素。移除它 直接使用jQuery结果,根据需要填写。例如: $(selector).toggle() (注意,切换属于jQuery对象本身
控制台显示。toggle它不是一个函数。0]从jQuery集合返回一个DOM元素。移除它 直接使用jQuery结果,根据需要填写。例如:
$(selector).toggle()
(注意,切换属于jQuery对象本身。)
不需要检查元素是否存在。选择器必须根据需要调整为“第一个”。试试看
document.querySelector(selector).classList.toggle('classname');
首先
[0]
返回DOM元素,而DOM元素没有切换方法,因此您会收到错误消息。其次,显示和隐藏一个元素,该元素不会触发单击事件
如果要触发单击事件,请使用click()
或trigger('click')
。要获取第一个元素,可以使用或:first
或eq(0)
获取元素
$('.btn-personalizar-tamanho').first().click()
或
也不需要检查jQuery是否存在该元素,因为当您链接方法时,它是在后台进行的 只需执行此操作,如果按钮存在,它将单击它
$('.btn-personalizar-tamanho').click();
如果您特别需要第一项,则添加“first”方法
如果将结果包装到另一个jquery选择器中,并将toggle方法更改为trigger,那么您的解决方案也会起作用
$btn = $('.btn-personalizar-tamanho')[0];
if($btn != undefined) $($btn).trigger('click');
呃,toggle与单击第一个按钮有什么关系?toggle()不是单击元素…本应作为重复按钮关闭,但单击了错误的按钮…@HereticMonkey这是代码的许多问题之一。@KevinB这只是问题之一。。。
$('.btn-personalizar-tamanho').first().click();
$btn = $('.btn-personalizar-tamanho')[0];
if($btn != undefined) $($btn).trigger('click');