gpt4 book ai didi

javascript - 无法访问 jquery 中的对象(prevObject?)

转载 作者:可可西里 更新时间:2023-11-01 13:07:25 25 4
gpt4 key购买 nike

我的 WP 插件中的一个函数随机(据我所知)停止工作。

这里是有问题的代码:

window.send_to_editor = function(html) {
var classes = jQuery('img',html).attr('class');
var items = classes.split(" ");
... more stuff here
}

我已经确认 html 变量确实是一个 img html 标签。这是当我对对象执行 console.log 时 firebug 显示的内容 (console.log(jQuery('img',html));):

Object[]
context -> undefined
jquery -> "1.11.2"
length -> 0
prevObject -> Object[img.alignnone.size-full.wp-image-1234 name.jpg]

它显示的错误是classes is undefined

我认为我得到的对象有问题,但这最近才有效,我不知道站点中的任何更改可能会导致此问题。

如有任何意见,我将不胜感激。

编辑:

更多信息。这发生在两个应该不相关的插件(由不同的人制作)上。当您将图像上传到服务器(或选择以前上传的图片)后尝试将其插入到帖子中时,就会发生这种情况。

正如我之前所说,这个错误是凭空出现的,它在几天前按预期运行。从那时起,我唯一能想到的就是域名发生了变化,但我看不出这有什么关系。

最佳答案

jQuery 选择器总是返回一个jQuery 对象,但是当length0 时,没有元素被返回找到匹配您提供的选择器。在您的示例中,您已确认未选择任何内容,因为 jQuery 对象的 length0。执行检查是否像这样选择了一个元素:

var $els = jQuery('img',html),
classes;
if ($els.length) {
classes = $els.attr("class");
}

请记住,您的 DOM 查询受限于您作为 html 参数传入的内容。如果您只是想在页面上查找图像,请执行以下操作:var $els = jQuery('img');

关于javascript - 无法访问 jquery 中的对象(prevObject?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30709987/

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