获取iFrame中子元素(child to<;a>;)的src属性,并使用javascript将其返回给父元素

获取iFrame中子元素(child to<;a>;)的src属性,并使用javascript将其返回给父元素,javascript,dom,iframe,Javascript,Dom,Iframe,因为它是一个由php动态生成的iframe,并且它只包含一个图片列表,所以我想获取单击项的src属性(一个包装在锚定标记中的图像),并将其返回给父级,或者将其保存到一个稍后可由父级访问的变量中 问题是jQuery在父窗口中,而不是iframe本身,所以我必须使用纯javascript并找到一种方法将变量发送回父窗口。我试过: function(){ $('#fancybox-frame').contents().find('.clickable').click(f

因为它是一个由php动态生成的iframe,并且它只包含一个图片列表,所以我想获取单击项的src属性(一个包装在锚定标记中的图像),并将其返回给父级,或者将其保存到一个稍后可由父级访问的变量中

问题是jQuery在父窗口中,而不是iframe本身,所以我必须使用纯javascript并找到一种方法将变量发送回父窗口。我试过:

function(){
                $('#fancybox-frame').contents().find('.clickable').click(function(){
                    alert('hey');
                });
从父窗口,但它不起作用,所以我现在在图像的锚中有一个内联
onclick
事件:

onClick=\"alert('this does work')\"
如何获取子级的src属性并将其发送回父级

编辑

我还尝试了几种不同的方法:

onclick=\"this.className += 'pickedOne';\"
但我没能把它正确地设置好

iframe内的所有元素都具有以下结构:

<div style=\"width: 300px; height:300px; float: left; margin-right:10px; \"><a onclick=\"this.className += 'pickedOne';\" title='".$value."' href='#'><img class='clickable' src=\"" . $value . "\" border=\"0\"/></a></div>

您使用jQuery的方式还可以,我有一个web应用程序也可以用同样的方式工作。jQuery在父窗口中加载,事件在iframe中使用与您使用的相同方法激发

可能您使用了错误的ID或类作为选择器

另外,在尝试附加任何事件侦听器之前,请确保正在等待加载iframe的内容

$('#fancybox-frame').load(function() {

    $('#fancybox-frame').contents().find('.clickable').click(function(){
        alert('hey');
    });

});

我也有这个函数,它不会触发任何东西,我猜这与正在使用的fancybox插件有关,但我真的找不到一个有效的解决方法…
$('fancybox frame').load(function(){alert('hello');})至少在它首先触发iframe的加载事件时重试。未发生任何事件:(这是iframe的id,尽管它包含在#fancybox内容中,这有什么关系吗?fancybox是否也使用iframe来显示内容?我知道很多插件实际上使用iframe来显示内容……如果是这样的话,你必须首先探索iframe的内容……恶心:)iframe是由fancybox插件本身创建的。我可能不得不这么做,但我真的不知道它是否是iframe中的iframe