我的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未定义。
我猜测得到的对象有问题,但这在最近仍然有效,我不知道网站中是否有任何更改可能导致此问题。
我会感激任何关于此的输入。
编辑:
更多信息。这发生在两个插件中,这些插件应该是无关的(由不同的人制作)。当您尝试将图片上传到服务器(或选择以前上传的图片)并将其插入到文章中时,就会出现这种情况。
如我之前所说,这个错误突然出现了,几天前它还能正常工作。我唯一能想到的改变是域名,但我看不出这与问题有什么关系。
html
的外层元素是img
,则需要使用filter
而不是find
来选择它。 - Rory McCrossanfind
(据我所知)。 - mustielesfind
。请尝试使用这个:var classes = jQuery(html).filter('img').attr('class');
- Rory McCrossan