2016-07-31 60 views
6

是否有可能,并且是否存在支持Web浏览器中的拆卸小部件的框架?即在Visual Studio中,您可以将任何窗口拖出主窗口以创建单独的浮动窗口。在Web框架中删除小部件?

我们有我们的移植到Web部件的本地应用程序。目前,我们可以将一些窗口拖出主窗口并创建一个单独的窗口。我们希望支持类似于我们基于网络版应用程序的内容。

目前,我们不依赖于任何特定的JavaScript框架的UI,因此任何洞察网页UI框架相对于该功能的当前状态,将不胜感激。

+0

检查这个https://github.com/STRML/react-grid-layout(它是阵营框架) – Lojka

+0

这是一个网格布局。我们正在寻找拆除工具窗口。 – bpeikes

+0

你在浏览器中运行是吗?我从来没有听说过。有趣的是,你可以做到这一点。要弄清楚这些机制需要一些精力油脂。首先,您的“小部件”必须设计为能够独立于新的浏览器窗口中。 – gforce301

回答

0

有可能在网络上。

我认为这是一个坏主意。这里的原因:

弹出窗口,以产生新的窗口机制,将有可能被阻塞,

它是罕见的做法,所以它会破坏用户的期望,

它需要一段时间才能使工作正常

另一种方法是有虚拟的Windows网页里面,我的意思是让类似的事情,但是使用了一个页面内的div,可以最小化和移动,但该页面只

0

我同意内部w^ith @Walle。 “虚拟窗口”方法比使用弹出窗口更好。我会看看Sencha和他们的Ext JS平台:Sencha Ext JS

我从来没有使用它自己,因为它是专有的,但演示看起来非常有前途。这里有一个显示“虚拟窗口”:Web Desktop

+0

这是一种有趣的技术,但需要开发人员重新考虑他们的方法(与许多其他框架一样)。他们有一个非常有说服力的方法,他们的文档并不是最好的,但是我在一年或两年前使用过它,一旦你掌握了它,它就是一个非常好的框架。如果您愿意为此付费,那是另一回事,许多其他免费框架提供了类似的技术 – Icepickle

1

这真的取决于你想要达到的目标,但在这里是用jQuery钝例如:

function popup(id) { 
 
    $('#' + id + '-pop').prop('disabled', true); 
 

 
    var popup = window.open('', 'popup', 'resizable=yes'); 
 
    var content = $('#' + id).detach(); 
 
    $(popup.document.body).append(content); 
 

 
    popup.onbeforeunload = function() { 
 
    $('#' + id + '-pop').prop('disabled', false); 
 
    content.appendTo($('#' + id + '-parent')); 
 
    }; 
 
}
.tearable-parent { 
 
    border: 1px #000 solid; 
 
    display: inline-block; 
 
    padding: 5px; 
 
    margin: 5px; 
 
} 
 

 
button { 
 
    display: block; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<body> 
 
    <div id="t1-parent" class="tearable-parent"> 
 
    <div id="t1"> 
 
     <span>This is tearable.</span> 
 
    </div> 
 
    </div> 
 
    <button id="t1-pop" onclick="popup('t1')">Pop me up</button> 
 
</body>

无法运行这里的例子,因为弹出是不允许的,但这里是一个​​你可以尝试它。当您关闭弹出窗口时,会将内容移回。请注意,如果您计划移动动态内容,则可能需要自己额外布线。

0

如果要移植一个Windows应用程序的Web应用程序(这是我在过去几年做的)没有什么市场相媲美的ExtJS的,尤其是如果它是一个企业应用程序。