| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Apr 2009
Beiträge: 1
| Flash-Elemente einer eingebundenen Webseite überlagern alle Flex-Komponenten
Hallo, ich möchte eine Webseite in einer Air Applikation anzeigen und darüber eigene Flex Elemente positionieren. Dabei ergeben sich jedoch Probleme, wenn die Webseite externe swf's einbindet. Diese werden immer auf der obersten Ebene dargestellt und scheinen sich nicht mit Flex-Komponenten überdecken zu lassen. Anbei ein einfaches Code-Beispiel. Wenn man über den "disable"-Button das Canvas "show" anzeigt, so sollte es das eingebundene HTML überdecken. Dies tut es auch bis auf die flash komponenten der Webseite. Code: <?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:Script>
<![CDATA[
private function testDisable():void
{
show.visible=!show.visible;
show.includeInLayout=!show.includeInLayout;
}
]]>
</mx:Script>
<mx:Panel
id="mainPanel"
width="100%"
height="100%"
headerHeight="10">
<mx:Button id="disable" label="disable" click="testDisable();"/>
<mx:HTML
id="htmlView"
width="100%"
height="100%"
location="http://www.vulcan.com"
/>
</mx:Panel>
<mx:Canvas
x="30"
id="show"
includeInLayout="false"
visible="false"
backgroundAlpha="0.7"
backgroundColor="#ff0000"
width="100%"
height="100%"
/>
</mx:WindowedApplication> Wie kann ich es nun bewerkstelligen, dass die Flash-Elemente der Webseite wie das HTML behandelt werden, d.h. im Hintergrund vorhanden/sichtbar bleiben, sich aber durch eigene Flex-Elemente überlagern lassen? |
| | |
| | #2 (permalink) |
| wolter.biz Registriert seit: Jun 2001 Ort: Düsseldorf
Beiträge: 3.395
|
Hallo Michael, ich habe das mal durchgespielt und es scheint so, als ob SWF-Dateien mit dem wmode (Fenstermodus) transparent oder opaque korrekt von dem WebKit-Browser in AIR in der DisplayList angezeigt werden - leider sind das nicht die besten Einstellungen, wenn es um Performance geht. Der performantere wmode window beschränkt das exklusive Rendern der SWF-Datei aber leider nicht auf die HTML-Komponente, sondern stellt sich auch bzgl. aller AIR-Inhalte in den Vordergrund. Aber wenigstens kann man ja dieses Verhalten wie oben mit den anderen wmodes beeinflussen (empfehlen würde ich dann jedoch opaque). Ich bin unsicher, ob das ein Bug oder ein Feature ist. Im Browser ist dieses Verhalten ja so definiert, aber bei AIR stellt sich die Frage, ob sich dieses Verhalten auf die HTML-Komponente oder die ganze AIR-Anwendung beziehen darf/muss. Grüße, Sascha. |
| | |
| | #3 (permalink) |
| Rene Registriert seit: Mar 2003
Beiträge: 19
|
Hallo Sascha, welche Alternative hätte man denn nun. Ich habe das gleiche Problem. Ich binde den Flashfilm über Javascript (jQuery) ein. Wenn ich wMode weglasse, so dass der Standardwert greift ist alles gut (unter Webkit-Browsern), wenn ich ihn setze, öffnet der Filedialog nicht - es hat den Anschein, der Film wird nicht angesprochen, denn über Monsterdebugger erreiche ich keinen einzigen trace mehr. Könnte es damit zusammenhängen, dass das HTML nicht mit "document.write" in die Seite geschrieben wird, sondern über appendNode etc? Danke Rene |
| | |
![]() |
| Lesezeichen |
| Stichworte |
| air, flex, html, überlagerung, webkit |
| Themen-Optionen | |
| Ansicht | |
| |