gpt4 book ai didi

javascript - TypeError : Object. defineProperty 在非对象 JQUERY 上调用

转载 作者:行者123 更新时间:2023-11-29 20:51:46 25 4
gpt4 key购买 nike

当我尝试访问每个 HTML 元素数组并处理该元素的 onclick 时,我在 Jquery 中遇到了这个错误。

Object.keys(collapsibles).forEach(function (key){
$(collapsibles[key]).on('click' , function( e ) {
e.preventDefault();
const id = $(this).data("id");
if (id !== _that.currentId) {
_that.closeCurrentOpen();
$(`[data-target="${$(this).data("id")}"]`).slideDown().addClass('open');
$(`[data-img="${$(this).data("id")}"]`).slideDown().addClass('arrowOpened');
return _that.currentId = id;
} else {
return _that.closeCurrentOpen();
}
});
});

错误出现在这一行

$(collapsibles[key]).on('click' , function( e ) {

可折叠元素的值(value)

var collapsibles = $('[data-behavior="collapsible"]');

最佳答案

下面的代码会出错,因为 $(collapsibles[key]) 不是 jQuery 对象:

$(collapsibles[key]).on('click' , function( e ) {//...});

请参阅this fiddle .我在那里模拟了你的代码。你可以在控制台中看到 collapsibles 似乎你不认为它是一个不适合你的数组。

您可以改用此代码 ( jsFiddle ):

$.each(collapsibles, function() {
$(this).on('click', function() {
// ...
});
});

关于javascript - TypeError : Object. defineProperty 在非对象 JQUERY 上调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51479827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com