假设我有以下代码:
var cont = <div id="foo">
imgSection.find('video').each(function(_ind)
{
cont.append('<div class="fullScreenBg"> '+ $(this) +' </div>');
});
导致:
<div id="foo">
<div class="fullScreenBg"> [object Object] </div>
</div>
但我实际上想要显示对象/视频的html。当我使用时:
$(this).html()
我非常接近,但正如预期的那样,它只显示了videoTag的innerHtml。 那么我该怎么做呢?
答案 0 :(得分:1)
您需要将video
元素包装在div
中并附加该对象。目前的问题是您将对象附加为一个字符串,导致对象进行字符串转换,从而产生[object Object]
。
imgSection.find('video').each(function(_ind) {
cont.append($(this).wrap('<div class="fullScreenBg"></div>').parent());
});
答案 1 :(得分:0)
或者,创建DOM元素而不是使用HTML:
var $parent = $('<div class="fullScreenBg" />');
$parent.append(this).appendTo(cont);