2016-07-31 38 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的,尤其是如果它是一個企業應用程序。