Javascript 有没有办法将fitVids()从元素的后面删除';申请了什么?

Javascript 有没有办法将fitVids()从元素的后面删除';申请了什么?,javascript,jquery,video,responsive-design,fitvids,Javascript,Jquery,Video,Responsive Design,Fitvids,我正在使用回复视频。我将其实例化如下: $("#thing-with-videos").fitVids(); $("#myDiv").unFitVids(); 我希望fitVids()应用于屏幕大小低于480px的一个特定元素,我已经实现了这一点。但是,出于显示目的,如果用户调整浏览器大小以检查小宽度的显示,我还需要应用fitVids(),我已经这样做了 jQuery(window).resize( function(){ $("#other-thing-with-videos.

我正在使用回复视频。我将其实例化如下:

$("#thing-with-videos").fitVids();  
$("#myDiv").unFitVids();
我希望
fitVids()
应用于屏幕大小低于480px的一个特定元素,我已经实现了这一点。但是,出于显示目的,如果用户调整浏览器大小以检查小宽度的显示,我还需要应用
fitVids()
,我已经这样做了

jQuery(window).resize( function(){
    $("#other-thing-with-videos.small_width").fitVids();            
});
。。。但是,这很好,因为
fitVids()
似乎应用于引用的DOM元素,而不是像我第一次想到的引用类,这意味着移除类(对于更宽的屏幕大小)并不会像我想的那样移除
fitVids()
的效果

那么有没有办法删除我在元素上调用的
fitVids()


编辑-我想知道该方法是否可以用于此操作?

以下内容将删除父div中的类和任何样式:

$('#container').fitVids();
$("#btn").click(function () 
{
    $(".fluid-width-video-wrapper").removeClass("fluid-width-video-wrapper").removeAttr("style");
});
这几乎消除了菲特维德效应

jsFiddle

编辑:我认为此解决方案效果更好:

$.fn.unFitVids = function () {
    var id = $(this).attr("id");
    var $children = $("#" + id + " .fluid-width-video-wrapper").children().clone();
    $("#" + id + " .fluid-width-video-wrapper").remove(); //removes the element
    $("#" + id).append($children); //adds it to the parent
};
您只需从元素中调用它,如下所示:

$("#thing-with-videos").fitVids();  
$("#myDiv").unFitVids();
jsFiddle


我能看到的唯一缺点是,因为我从DOM中删除元素,克隆它们,并将它们放入div父级,如果视频已经在播放,它将停止。

Hanlets代码是一个好主意,但它假设选择器中只有一个视频

下面的扩展代码在所有视频中循环

$.fn.unFitVids = function () {
    $.each(this, function(i, el){
        var $wrapper = $(".fluid-width-video-wrapper", el),
            $children = $wrapper.children().clone();
        $wrapper.remove();
        $(el).append($children);
    })
};
您可以简单地使用:

$(".fluid-width-video-wrapper iframe").unwrap();
但是“.fluid width video wrapper”是在延迟后应用的(文档加载后),因此您可以在延迟后启动该函数

setTimeout(function () {
  $(".fluid-width-video-wrapper iframe").unwrap()
}, 300);

你能创建一个JSFIDLE示例吗?@HanletEscaño它非常复杂,是用引导wordpress和flexslider构建的。。。创建一个简化的测试用例需要很长时间。。。谢谢。@HanletEscaño抱歉,我刚刚意识到我在胡说八道,我根本不需要这个项目中的所有其他东西。这里有一个。。。我想做的是在应用fitVids()之后,通过JS将其从
#容器中删除。。。考虑得很好。谢谢你的帮助。。。实际上,同时我发现(大概是因为我的CSS规则),我还需要删除div元素本身。。。因此,如果父对象是
.fluid width video wrapper
,我就设法在iframe上使用
展开()。再次感谢你,我从来没有想过用这种方式来看待它。