我想出了將元素分離到彈出窗口的想法。使用window.open()
進行彈出,在該文檔中設置一些元素,並添加事件偵聽器以達到原始目的,但作爲彈出窗口組件。所有這些工作,似乎創建的窗口是由同一個線程處理。使用多個交互式彈出窗口的影響
這種「技巧」是否容易出錯? I.g:如果我在彈出窗口中創建一個畫布並從中獲取WebGL上下文,它會完美地工作嗎?如果我在那裏設置了一堆事件監聽器,我會毫不遲疑地從他們那裏獲得回調嗎?
我無法對此進行研究,因爲幾乎沒有人這樣做。在我的生活中,我看到很多網站都使用彈出式窗口進行用戶輸入,但不是用於交互式或實時的東西。我正在構建一個複雜的網絡應用程序,利用多個顯示器將有助於用戶體驗。你知道,至少我知道擁有兩臺顯示器是多麼痛苦,並且無法使用它們,因爲應用程序的所有組件都被限制在一個窗口中。試想一下,如果使用MDI版本的Photoshop,所有工具箱都在MDI區域內,並且無法將它們從應用程序窗口中取出。一個網頁就是這樣。
Microsoft Dynamics CRM廣泛地執行此操作。這非常「實時」。懷疑這會幫助你進一步研究他們的技術,但這只是一個想到的例子。 FWIW,我有兩臺顯示器,但Dynamics CRM仍然可能令人沮喪地使用它的所有多個窗口;您仍然需要仔細考慮這些多個窗口的工作方式,否則它可能會比單個窗口UI更糟糕。 –
這是一個面向公衆的網絡應用程序或內部應用程序?換句話說,你可以控制環境? – fruggiero
@fruggiero號它是針對普通大衆的。談論像Kerbal Space Program這樣的飛行模擬器。 –