5

我正在尝试从父内部iframe到内部.prependTo使用JQuery。.class div

这有多个相同的.class。**编辑和 iframe

一切都在同一个域上。

因此,从主文档内部:

<div class="NewPHOTOS">
    **<!--PUT ME HERE!-->**
    <div class="LinePhoto">
        <a href="images/518279f07efd5.gif" target="_blank">
            <img src="images/thumb_518279f07efd5.gif" width="50" height="50">
        </a>
    </div>

   <iframe class="uploadLineID_55" width="800px" height="25px" src="../../uploads/uploadiframe.php" scrolling="no" seamless></iframe>
</div>

iframe 内的脚本

$(document).on("click", '#TEST', function() {

  appendImagetoParent();

});


function appendImagetoParent()  {

var data = '<div class="LinePhoto"><a href="images/TEST.gif" target="_blank"><img src="images/thumb_TEST.gif" width="50" height="50"></a></div>';

$(".NewPHOTOS", window.parent.document).each(function() { $(data).prependTo($(".NewPHOTOS"));
});

/* $(data).prependTo( $(".NewPHOTOS", window.parent.document) ); This prepends to Every .NewPHOTOS */}

我一直在转圈和谷歌搜索几个小时。我想不通。

我在这里做错了什么?

编辑 我用过,效果很好!

 $(parent.document).find('.' + frameElement.className )
                      .closest('.NewPHOTOS')
                      .prepend( data );
4

1 回答 1

3
$(document).on("click", '#TEST', appendImagetoParent);

function appendImagetoParent()  {

    var div = $('<div />', {'class':'linePhoto'}),
        a   = $('<a />',   {href:'images/TEST.gif', target:'_blank'}),
        img = $('<img />', {src:'images/thumb_TEST.gif', width:'50', height:'50'});

    $(parent.document).find('.' + frameElement.className )
                      .closest('.NewPHOTOS')
                      .prepend( div.append( a.append(img) ) );
}

使用获取包含 iFrame 的类frameElement.className,并使用该类在父文档中找到正确的 iFrame,然后找到最接近的.NewPHOTOS元素,并预先添加内容,以更 jQuery 的方式创建。

于 2013-05-02T15:40:21.710 回答