我试图使用jQuery从内部的iframe,以.prependTo一个.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>
Run Code Online (Sandbox Code Playgroud)
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 */}
Run Code Online (Sandbox Code Playgroud)
我一直在圈子里跑来跑去玩几个小时.我无法弄清楚这一点.
我在这做错了什么?
编辑 我用过,效果很好!
$(parent.document).find('.' + frameElement.className )
.closest('.NewPHOTOS')
.prepend( data );
Run Code Online (Sandbox Code Playgroud)
$(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) ) );
}
Run Code Online (Sandbox Code Playgroud)
使用 获取包含 iFrame 的类frameElement.className,并使用该类在父文档中查找正确的 iFrame,然后查找最接近的.NewPHOTOS元素,并添加以更 jQuery 的方式创建的内容。