[英]jquery attr() method doesn't work but javascript version does
这是我当前的JavaScript代码
var image = iframe.contentWindow.document.getElementsByClassName('productVisu').getElementsByTagName('img').getAttribute('src');
这可用于检索图像的URL属性。 但是,当我尝试这个jQuery版本:
var iframe = document.getElementsByTagName('iframe')[0];
var doc = iframe.contentWindow.document;
var image = $('iframe').contents().find('.productVisu').$('img').attr('src');
我得到的不是这个功能的Firefox错误。 如何解决此问题并使jquery版本正常工作?
谢谢
更改此:
$('iframe').contents().find('.productVisu').$('img').attr('src');
至:
$('iframe').contents().find('.productVisu img').attr('src');
我不确定原始代码的工作方式,因为getElementsByClassName
和getElementsByTagName
返回节点列表,而不是单个节点。
尝试以下方法:
var image = iframe.contentDocument.querySelector(".productVisu img").src;
可以使用Vanilla JS时,切勿使用jQuery。 就像用大锤转动螺丝一样。
我不理解您的示例中前两行代码的必要性。 您可以轻松地做到这一点:
var image = $('iframe').eq(0).find('.productVisu img').attr('src');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.