2016-12-02 99 views
-1

我已經得到了一個ID的列表,我經歷,然後我想附加一個新創建的iFrame到每個。追加孩子到引用div

$.each(elm, function(key, value) { 
    var id = (data[key].id).split(':')[2]; 
    var iframe = $('<iframe>', { src: 'https://www.youtube.com/embed/' + id + 
    '?controls=' + settings.controls + 
    '&rel=' + settings.rel + 
    '&showinfo=' + settings.showinfo, 

    frameborder: settings.frameborder, 
    width: settings.size[0], 
    height: settings.size[1], 
    allowfullscreen: settings.allowfullscreen 
    }); 
    $(value).appendChild(iframe); 
    $(value).find('.youtube_title').html(data[key].title); 
    $(value).find('.youtube_link').attr({ target: '_blank', src: data[key].link['@attributes'].href }); 
    $(value).find('.youtube_channel').html(data[key].author.uri); 
}); 

然而即時得到以下錯誤:

Uncaught TypeError: e(...).appendChild is not a function(…)

如果我做$(value).html(iframe);這工作得很好!

+4

jQuery函數是['追加()'](HTTP:// API。 jquery.com/append/) –

+0

@JasonP謝謝!添加作爲答案? –

+2

關閉它作爲錯字?現在對未來的讀者沒有價值 – DaniP

回答

0

append是一種將某些內容或HTML附加到元素的jQuery方法。

$(value).append('Some text or HTML'); 

appendChild是用於添加子元素的純DOM方法。

document.getElementById('example').appendChild(newElement); 

http://jsfiddle.net/xtb51wed/

有一種方法來轉換jquery對象選擇方法的HTML DOM對象

$(value)[0].appendChild(newElement);